1

setContentView()メソッドでメソッドを呼び出すことはできますgetView()か?もしそうなら、どのように?
実際、TextView、Imageview、Buttonなどのビューを表示するために使用しているリストがあります。ボタンクリックイベントで、他のビューを表示したいと思います。これが私のコードです:

Button select = (Button)findViewById(R.id.button1);
select.setOnClickListener(new OnClickListener() {
  public void onClick(View arg0) {
     setContentView(R.layout.search);
  }
});

しかし、BaseAdapterクラスでこのメソッドを使用しているため、構文エラーが発生します。

これを行う他の方法はありますか?

前もって感謝します。

4

2 に答える 2

1

基本アダプタクラスを拡張している場合は、拡張アダプタクラスでコンテキストを渡すことができます。次に、そのコンテキストを使用してコンテンツビューを設定できます。

context.setContentView(R.layout.search);

もう1つの方法は、ブロードキャストレシーバーを使用して、アダプタークラスからアクティビティクラスにブロードキャストを送信し、アクティビティを更新することです。

私は最初の方法を試したことがありませんが、2番目の方法を試しました。

于 2012-04-17T10:56:39.617 に答える
0

getView(...)レイアウトを作成しrow、imageview、textview、Buttonを配置します

@Override
    public View getView(int position, View convertView, ViewGroup parent) {

        View v = convertView;

        if (v == null) {
            LayoutInflater vi = (LayoutInflater) CurrentContext
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            v = vi.inflate(R.layout.row, null);

        }  
   }

そしてこれを参照してくださいhttp://www.androidhive.info/2012/02/android-custom-listview-with-image-and-text/

于 2012-04-17T09:53:35.807 に答える