私のアプリには、さまざまなアイテムを持つ ListView があります。私が抱えている問題は、特定のアイテムごとにリスナーまたはアクションを実行したいということです。現在、アイテムを押したときに私が持っているコードは、特定のアイテムではなくすべてのアイテムに適用されます。
私がやろうとしているのは、特定のアイテムが押されたときにビデオをストリーミングすることです。
これが私のコードです:
public class MainActivity extends Activity {
private ListView listView1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViedoStream viedoStream_data[] = new ViedoStream[]
{
new ViedoStream(R.drawable.image0, "Mission TV"),
new ViedoStream(R.drawable.image1, "HCBN Philippines"),
new ViedoStream(R.drawable.image2, "Global Family Network"),
new ViedoStream(R.drawable.image3, "2CBN"),
new ViedoStream(R.drawable.image4, "Red ADvenir"),
new ViedoStream(R.drawable.image5, "Alfa Television"),
new ViedoStream(R.drawable.image6, "Light Channel Hungary"),
new ViedoStream(R.drawable.image7, "Light Channel Rumania"),
new ViedoStream(R.drawable.image8, "Light Channel Germany"),
new ViedoStream(R.drawable.image9, "Terceiro Anjo"),
new ViedoStream(R.drawable.image10, "HCBN Indonesia"),
new ViedoStream(R.drawable.image11, "TV Famille")
};
ViedoStreamAdapter adapter = new ViedoStreamAdapter(this,
R.layout.listview_item_row, viedoStream_data);
listView1 = (ListView)findViewById(R.id.listView1);
View header = (View)getLayoutInflater().inflate(R.layout.listview_header_row, null);
listView1.addHeaderView(header);
listView1.setAdapter(adapter);
listView1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView <?> parentAdapter, View view, int position,
long id) {
// Place code here with the action: RIGHT NOW I HAVE A TOAST FOR EXAMPLE ONLY
Toast.makeText(getApplicationContext(), "TV Selected", Toast.LENGTH_SHORT).show();
}
});
}}
ご覧のとおり、項目が選択されると、ListView のすべての項目にトーストが適用されます。トーストは私が使用している例にすぎないことに注意してください。代わりに http ビデオをストリーミングしたい。アイテムを選択するたびに、その特定のアイテムに対してのみアクションを実行するようにするにはどうすればよいでしょうか?
私は iPhone 用のプログラミングを行っていますが、これはすべて初心者です... iPhone では、これが私のやり方です。*これは、ロジックがどのように見えるかの単なる例です:
if (item == @"TV Item" {
//Do Action
}
ありがとう