2017-11-17 13 views
0

複数の文字列を保持し、ArrayAdapterとAsyncTaskLoader(JSON APIから文字列が入力されています)を使用してリストにデータを渡すために、独自のクラス(Course)を作成しました。listViewアイテムのカスタムオブジェクトから文字列を抽出します。

のは、私は私のクラス内のこれらの3つの文字列があるとしましょう:

private String mCourseTitle; 
private String mTime; 
private String mTrainer; 

public String getCourseTitle() { 
    return mCourseTitle; 
} 

public String getTime() { 
    return mTime; 
} 

public String getTrainer() { 
    return mTrainer; 
} 

私は私のフラグメント内の項目をクリックリスナーを設定したいタップすると、唯一のコースタイトル文字列とIとトーストメッセージが表示されていること私はちょっと固まった...

クリックした項目からトーストに表示するタイトルをどのように抽出するのですか?

// Create a new adapter that takes an empty list of days as input 
     mAdapter = new DayAdapter(getActivity(), new ArrayList<Day>()); 

     // Set the adapter on the {@link ListView} 
     // so the list can be populated in the user interface 
     listView.setAdapter(mAdapter); 

     //on item click Listener 
     listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) { 
       // Show the title 
       Toast.makeText(getContext(), Title, Toast.LENGTH_SHORT).show(); 
      } 
     }); 

答えて

1

ここ答え

//on item click Listener 
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) { 
      Course yourCourse = yourList.get(position); 
       String yourCourseTitle = yourCourse.getCourseTitle(); 
      // Show the title 
      Toast.makeText(getContext(), Title, Toast.LENGTH_SHORT).show(); 
     } 
    }); 
+0

コースcurrentCourse = listView.get(位置)です。 get(int)メソッドを解決できないと言っています。 – Alin

+0

ListView.get(position)ではない、あなたのオブジェクトのリストを使用して、私はArrayListまたはリストを意味します。どのようにアダプターを作成していますか? – diegoveloper

+0

私の悪い、それはArrayListになるはずだった – Alin

関連する問題