すべての JSON 解析が機能し、表示されます。唯一の問題は、ListView をスクロールすると、すぐに次のログが表示されることです。
10-16 21:49:34.383: E/InputEventReceiver(6798): Exception dispatching input event.
10-16 21:49:34.383: D/AndroidRuntime(6798): Shutting down VM
10-16 21:49:34.383: W/dalvikvm(6798): threadid=1: thread exiting with uncaught exception (group=0x40e95a08)
10-16 21:49:34.438: E/AndroidRuntime(6798): FATAL EXCEPTION: main
10-16 21:49:34.438: E/AndroidRuntime(6798): java.lang.ClassCastException: android.widget.RelativeLayout cannot be cast to com.android.test.sandroid.MainActivity$FancyAdapter$ViewHolder
10-16 21:49:34.438: E/AndroidRuntime(6798): at com.android.test.sandroid.MainActivity$FancyAdapter.getView(MainActivity.java:180)
それが起こることです。これが私のコードで、JSON を作成し、それをカスタム アダプターを使用してリストに渡します。それを行うより良い方法はありますか?YouTubeのチュートリアルビデオに従いました。
//End of AsyncTask
class FancyAdapter extends ArrayAdapter<pData> {
FancyAdapter() {
super(getApplicationContext(), android.R.layout.simple_list_item_1, arrayOfNames);
}
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
LayoutInflater inflater = getLayoutInflater();
convertView = inflater.inflate(R.layout.row, null);
holder = new ViewHolder(convertView);
convertView.setTag(convertView);
編集:ノーセンスコードを削除しました。カウントされたビットは、下のホルダーです。