クリックしたアイテムの非表示フィールドの値を取得できません。
SO Postに従って、クリックされたリストビュー項目の非表示の値を取得しましたが、値を取得できませんでした。私は得てClassCastException
います。
コード -
listView.setOnItemClickListener(new OnItemClickListener()
{
//////////list view on click
public void onItemClick(AdapterView<?> view, View arg1,
int position, long arg3) {
String S = (String)view.getItemAtPosition(position); //This line gives exception
System.out.println("TextView vehicleSrc>>"+S);
//OR
String itemSelected = ((TextView)view.findViewById(R.id.vehicle_source)).getText().toString();
System.out.println("TextView vehicleSrc"+itemSelected); // this is giving blank
}
私のエラーログ -
03-20 12:47:08.742: E/AndroidRuntime(26965): FATAL EXCEPTION: main
03-20 12:47:08.742: E/AndroidRuntime(26965): java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
03-20 12:47:08.742: E/AndroidRuntime(26965): at com.iddl.main.EntryFragment$13$2.onItemClick(UserFragment.java:907)
アップデート:
上記のテキストビューをxmlの非表示フィールドに定義しました-
<TextView
android:id="@+id/vehicle_source"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:visibility="gone"/>
今、各リストビュー項目の値を次のように設定しようとしています-
TextView vehicleSrc = (TextView) vi.findViewById(R.id.vehicle_source);
if(isCondition1)
vehicleSrc.setText("Normal");
else
vehicleSrc.setText("Other");
end