1

私はAndroidプロジェクトに取り組んでおり、jfeinsteinスライディングメニューライブラリを利用しています。ライブラリはhttps://github.com/jfeinstein10/slidingmenuにあります。

ライブラリが正常に機能するようになり、スイッチなどのTextViewだけでなく、他のコンポーネントでも機能するようにコードを修正しました。ユーザーがアクティビティを切り替えることなくボックスに直接入力できるように、メニューにEditTextを追加しようとしています。

私はそれを持っているので、私はMenuAdapter拡張する呼び出しを持っていますArrayAdapter。次に、これには一連のコンストラクターがあり、コンストラクターと渡される値に基づいて、スライドメニューに追加されるコントロールを決定します。スライドメニューにが追加され、ヒントが送信されます。EditText編集テキストをタップするとキーボードが表示されますが、何かを入力すると、編集テキストに表示されません。ただし、奇妙なことに、編集テキストを長押しして[貼り付け]をクリックすると、貼り付けられたコンテンツが表示されるため、入力するだけでは機能しません。

以下はXMLレイアウトです。各コンポーネントは、に設定された可視性を使用して非gone表示になり、使用されたコンストラクターに応じて表示されるように設定されます。

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

    <ImageView
        android:id="@+id/row_icon"
        android:paddingLeft="25dp"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:padding="10dp"
        android:visibility="gone" />

    <TextView
        android:id="@+id/row_title"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:padding="10dp"
        android:text="Medium Text"
        android:textAppearance="@android:style/TextAppearance.Medium"
        android:visibility="gone"
        android:textColor="@color/White" />

    <Switch 
        android:id="@+id/row_switch"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:padding="10dp"
        android:visibility="gone"
        android:textColor="@color/White"/>

    <EditText 
        android:id="@+id/row_edittext"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:gravity="center_vertical"
        android:padding="10dp"
        android:visibility="gone"
        android:textColor="@android:color/white" />

</LinearLayout>

以下は、EditTextがメニューに追加される方法のコードです。

case EDITEXT:
    EditText editText = (EditText)convertView.findViewById(getItem(position).viewID);
    editText.setHint(getItem(position).hint);
        editText.setEnabled(true);
    editText.setVisibility(View.VISIBLE);
        break;

あなたが提供できるどんな助けにも感謝します。

4

0 に答える 0