2011-12-28 16 views
5

1行目にアンドロイド、2行目にブラックベリー、3行目にiphoneを想定したListViewがありますので、ListViewの行全体をクリック可能にしたいのですが、リストビューの列の内容は、それがイベントをクリックするだけで実行しますが、私は行の任意の場所をクリックすると、次にクリックアクションは、リストビュークリッカブルを作るためのperformed.Myコードでなければなりませんしたい以下の通りです:listviewで完全な行をクリック可能にする方法android

XMLで
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.listartistspacedetailview); 

    setListAdapter(new ArrayAdapter(this,R.layout.listitem_layout,R.id.barrio, keywordxmlparsing.array_artistname)); 

} 
@Override 
protected void onListItemClick(ListView l, View v, int position, long thisID) 
{ 
    Intent i = new Intent(Artistspacedetailview.this, Loadingimagetab.class); 
    startActivity(i); 
} 

とリストビュータグファイル:

<ListView 
    android:clickable="true" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:id="@+id/android:list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:layout_below="@id/horizontolline" 
    android:cacheColorHint="#00000000" 
    android:drawSelectorOnTop="false" /> 
+4

あなたの質問はまだ明確ではありません。 listitemをクリックすると、おそらく生のものが選択されるはずです(クリックイベントをキャッチする必要があります)。 – Hiral

+0

listitem_layoutを投稿してください。 – Ian

+0

私はそれが行の中でリストをクリックすると、リスト行のみがクリック可能であることを意味します。他の賢明なクリックイベントはfire.evenではありません。アンドロイドを定義できます:clickable = "true" – shyam

答えて

-2

これはあなたに役立つかもしれません...

8

私はこの質問が古いことを知っていますが、私はこの問題を探していたときにGoogleの私にとって最初のヒットでした。

これは私のソリューションです。

<ListView 
    android:id="@+id/XXXXXX" 
    android:layout_width="fill_parent" // Changed from wrap content 
    android:layout_height="fill_parent" // Changed from wrap content 
    android:clickable="true" >   // This was suggested in other topics 
</ListView> 
2

これは古くなっていますが、他の人にとっては役に立ちます。インフレータブルレイアウトをparentに設定し、レイアウト内でクリック可能な他のアイテムにも設定して、リストアイテムがすべてのフォーカスを得るようにします。また、項目をfocusable falseに設定し、focusableOnTouch falseにも設定します。

関連する問題