2

私はこれを理解していません: 製品とカテゴリのリストを表示する必要がある ListFragment があります。カテゴリを入力すると、リストの TextView に実際のカテゴリが表示されます。ルート カテゴリに戻るには、戻るボタンも必要です。OnKey は、レイアウトに ListView しかない場合に機能します

  <ListView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </ListView>

TextView を追加してカテゴリを表示すると、OnKey は呼び出されません。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

    <ListView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </ListView>

</LinearLayout>

フラグメントコード:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.frag_cats, container, false);
        //actual_category_name = (TextView) view.findViewById(R.id.actual_category_name);
        view.setOnKeyListener(new OnKeyListener(){

            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if ((keyCode == KeyEvent.KEYCODE_BACK) && event.getAction() == KeyEvent.ACTION_UP) {
                    goBack();
                    return true;
                }
                return false;
            }

        });
        return view;
    }

ListFragment を fragment に変更しても、何も変わりません。私を助けてください。前もって感謝します。

4

0 に答える 0