2016-12-27 7 views
0

からのTextViewの文字列リソースを取得し、私が転がり得るために、このウェブサイトからコードをコピー:https://www.sitepoint.com/starting-android-development-creating-todo-app/私はリストビューを理解していなかったので、私が読ん選択ListView項目

のウェブサイトは、包括的な内訳を提供していませんでしたが私はそれをそのまま残して、3つの追加ビュー(ListViewデータベースでまだ使用されていないビュー)を追加し、item_todo.xmlから削除ボタンを削除します。 MainActivityの削除ボタンの対応コードも削除しました。

だから私のitem_todo.xmlは次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/relativeLayoutItemToDo" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center_vertical"> 


    <TextView 
     android:id="@+id/task_title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentStart="true" 
     android:layout_marginBottom="6dp" 
     android:layout_marginStart="16dp" 
     android:layout_marginTop="10dp" 
     android:text="Mark Skidder" 
     android:typeface="serif" 
     android:textSize="40sp" /> 


    <TextView 
     android:id="@+id/characterWeightDisplay" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignStart="@+id/characterNameDisplay" 
     android:layout_below="@+id/characterNameDisplay" 
     android:text="120/213" 
     android:typeface="serif" 
     android:textSize="20sp" /> 

    <TextView 
     android:id="@+id/characterLevelDisplay" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignEnd="@+id/imageView2" 
     android:layout_below="@+id/characterNameDisplay" 
     android:text="Level 14" 
     android:typeface="serif" 
     android:textSize="20sp" /> 

    <ImageView 
     android:id="@+id/imageView2" 
     android:layout_width="1dp" 
     android:layout_height="1dp" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/characterWeightDisplay" 
     android:layout_centerHorizontal="true" 
     android:layout_marginLeft="16dp" 
     android:layout_marginRight="16dp" 
     android:layout_marginTop="25dp" 
     android:background="@color/colorGrey" /> 


</RelativeLayout> 

そして、私のMainActivityは、私がウェブサイトにリンクされたコード、マイナス「の削除タスク」の章のように見えます。

質問: 特定のリスト要素をクリックすると、リスト内のそのListViewの位置を取得するにはどうしたら、task_title TextViewから文字列として対応するテキストを抽出するのですか?

+0

試したことを表示しますか? –

答えて

1

問題を正しく示しているので、このコードでリストビューで選択した行から文字列を抽出できます。

 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) { 
      TextView textView = (TextView)view.findViewById(R.id.task_title); 
      String text = textView.getText().toString(); 
     } 
    }); 

リストビューでOnItemClickListenerを設定するだけです。このメソッドは、リスト内の項目をクリックするたびに呼び出されます。 OnItemClick内には、選択した行のビューがあり、このレイアウトから子ビューを抽出してテキストを取得できます。 お手伝いをしてください。

+0

これはあなたに必要なものを与えるはずです。さらに、onItemClick()には、リスト内の位置を示す 'position'パラメータもあります。 –

+0

完璧!ありがとう、あなたの答えは非常に明確だった。 –

関連する問題