0

ビューをリストビュー内のアイテムのように強調表示したい (リストビューは addchild() を使用して新しいアイテムを動的に追加できないため、代わりに linearlayout を使用します)

リストビュー アイテムがタッチされると、通常、そのアイテムは緑色で強調表示されます。この機能を線形レイアウトのビューに実装するにはどうすればよいですか?

ビューの ontouchlistener で view.requestfocus を試しました。これは true を返しますが、何も観察できません。

前もって感謝します!

4

1 に答える 1

1

リストビューにアイテムを動的に追加できます....

public class MainActivity extends ListActivity {

/** Items entered by the user is stored in this ArrayList variable */
ArrayList<String> list = new ArrayList<String>();

/** Declaring an ArrayAdapter to set items to ListView */
ArrayAdapter<String> adapter;


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    /** Setting a custom layout for the list activity */
    setContentView(R.layout.main);

    /** Reference to the button of the layout main.xml */
    Button btn = (Button) findViewById(R.id.btnAdd);

    /** Defining the ArrayAdapter to set items to ListView */
    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);

    /** Defining a click event listener for the button "Add" */
    OnClickListener listener = new OnClickListener() {          
        @Override
        public void onClick(View v) {                               
            EditText edit = (EditText) findViewById(R.id.txtItem);
            list.add(edit.getText().toString());
            edit.setText("");               
            adapter.notifyDataSetChanged();
        }
    };

    /** Setting the event listener for the add button */
    btn.setOnClickListener(listener);

    /** Setting the adapter to the ListView */
    setListAdapter(adapter);        
}

}

于 2012-08-06T03:07:10.170 に答える