0

いくつかのアイテムをリストとして表示していますが、リスト内の各アイテムの画面の右側に、削除/編集のオプションを提供する小さなドロップダウンを追加する方法があるかどうか疑問に思いました。

それは可能ですか?Rigth今私はこのようなものをリストします:

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


<include android:id="@+id/header"
         layout="@layout/header"
         android:layout_height="wrap_content"
         android:layout_width="fill_parent"/>    


<TextView
    android:id="@+id/no_problems"    
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Enter the business(es) you want to plan or choose from your existing list."
    />          


    <ListView
    android:id="@android:id/list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@+id/label"
        android:textSize="20px" >        
    </ListView>

        <Button
    android:id="@+id/add_problem_ok"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textColor="@color/light_best_blue" 
    android:text="Plan a New Business"
    android:layout_marginTop ="15dp"    
    />  
</LinearLayout>

そしてlistViewで私はこれを持っています:

<?xml version="1.0" encoding="utf-8"?>

    <TextView xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="10dp"
        android:textSize="16sp" >
    </TextView>       

ありがとう!

4

2 に答える 2

2

見栄えを良くしたい場合はquickaction-dialog、オプションメニューを使用してください。ここでは、quickaction-dialogの例全体を示します

于 2012-06-03T11:27:21.603 に答える
1

リストアイテムのレイアウトにスピナーを追加し、getView()メソッドでアダプターをtatスピナーに設定するだけです。

例:ur list_item.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
 <TextView android:id="@+id/nameTV" android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:padding="10dp"
        android:textSize="16sp" >
    </TextView>  

<Spinner android:id="@+id/actionSP" android:layout_width="wrap_content"
        android:layout_height="fill_parent" />
</LinearLayout>

次にURgetView()

    @Override
    public View getView(int position, View view, ViewGroup viewGroup) {
        final ViewHolder viewHolder;

        if (view == null) {
            viewHolder = new ViewHolder();

            view = mInflater.inflate(R.layout.list_item,
                    null);
            viewHolder.nameTV = (TextView) view
                    .findViewById(R.id.nameTV);

            viewHolder.actionSP = (Spinner) view
                    .findViewById(R.id.actionSP);

            ArrayAdapter<String> reasonAdapter = new ArrayAdapter<String>(
                    mApplication, android.R.layout.simple_spinner_item,
                    mYourActionsArray);

            reasonAdapter
                    .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            viewHolder.actionSP.setAdapter(reasonAdapter);

            viewHolder.actionSP
                    .setOnItemSelectedListener(new OnItemSelectedListener() {

                        @Override
                        public void onItemSelected(AdapterView<?> arg0,
                                View arg1, int position, long arg3) {
                        }
                    });
                view.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) view.getTag();
        }

        viewHolder.nameTV.setText("Some Value");

ビューを返す; }

ViewHolderクラス

class ViewHolder {
    TextView nameTV;
    Spinner actionSP;
}
于 2012-06-03T11:23:34.807 に答える