【Android】ListView のアイテムの文字列を取得したい

EngineeringAndroid, 備忘録

【Android】ListView のアイテムの文字列を取得したい

Android

~という言葉で検索するも、どれもこれも大同小異、一つの内容しかヒットせず、試してもエラーになる。

なんとか想定動作を実現できたので残しておきまっす。
残しておくんだぜ。
いや、残さねばならないのです!

public class DB_Activity01 extends AppCompatActivity {
    ListView lView;
    LinearLayout lv_li;
    TextView li_id;
    static int delId;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.db_activity01);

        lView = (ListView) findViewById((R.id.lView));

        lView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                lv_li = (LinearLayout) findViewById((R.id.lv_li));
                li_id = (TextView) view.findViewById(R.id.li_id);
                TextView target = (TextView) lv_li.findViewById(R.id.li_id);
                delId = Integer.parseInt(li_id.getText().toString());
                Toast.makeText(DB_Activity01.this, "★" + delId, Toast.LENGTH_SHORT).show();
                new AlertDialog.Builder(DB_Activity01.this)
                        .setTitle(getText(R.string.delAlDi))
                        .setMessage(R.string.youDelete)
                        .setPositiveButton(R.string.iSteer, new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                VDDBHelper helper = new VDDBHelper(DB_Activity01.this);
                                SQLiteDatabase db = helper.getWritableDatabase();
                                if (db == null) {
                                    Toast.makeText(DB_Activity01.this, R.string.dbError, Toast.LENGTH_SHORT).show();
                                    return;
                                }
                            }
                        })
                        .setNegativeButton(R.string.iDelete, new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        deleteData(delId);
                                    }
                                })
                        .show();
            }
        });
    }
}

赤字のところがわからず、随分くろーしちゃった。

 

よくある、というか、これ一色のような気もするが、Web上に散在する今回結果的にぜんぜん参考にならなかった紋切り型のコードがこれさ。

lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                ListView listView = (ListView) parent;
                String item = (String) listView.getItemAtPosition(position);
                Toast.makeText(getApplicationContext(), item + " clicked",
                        Toast.LENGTH_LONG).show();
            }
        });

私の気が付かない環境設定が何かあるんだろう、と言っておくよ。

 

 

はぁ、疲れた。いっこうに賢くなることはない日本語バカ変換並みに疲れる。ユーザーおちょくりOS Windows はすばらしいよ。

stupid exchange001   stupid exchange002

↓ Edge : ダウンロードするに決まってんだからさ、この確認クリックに、なんか意味あんのか???

stupid windows001

あほんだらぼけ。

 

 

日本語による検索の肩透かし度を毎度思い知らされる、ほんと。

ならば英語で検索・解読せんかいと叱咤されそうだ、そんな声が頭の中でする、が、それはそうなんだね。

克服困難な高い壁だが、理にかなっている導きの声です♡

だから、英語の勉強もプログラムの研究と並行して始めたわけですよ。

一つの事例を子細に分析・報告している英語圏の情報量・質はすごい。

まるで、第二次大戦における日本VSアメリカの、圧倒的な物量勝負の様相を、日本語VS英語圏で、呈する。

 

 


 

EngineeringAndroid, 備忘録

Posted by Qawai