2011-10-17 5 views
1

ImageButtonのテーブルを動的に作成しています。イメージボタンのsetPressedをtrueにしたいとします。ユーザーがクリックしたときに表示されます。私はボタンを動的に作成しているので、どのようにしてonClickListenerを使ってsetPressedするのですか?クリック時にAndroidのセットボタンが押された

 { 
      ImageButton b = new ImageButton(this); 
      b.setLayoutParams(new TableRow.LayoutParams(
           LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); 
      b.setBackgroundResource(R.drawable.happy); 
      b.setOnClickListener(new OnClickListener() { 
          public void onClick(View v) { 
           onClickListenerForTag("tagStr"); 
          } 
      } 
     } 

    private void onClickListenerForTag(final String tagStr) { 
      assert (tagStr != null); 
        mTagStr = tagStr; 
        //need to call setPressed(true) here ? 

     } 
+0

どのオブジェクトを 'setPressed(true)'にしますか? – slayton

+0

@slaytonは私が動的に作成している画像ボタンです。 – ssk

答えて

0

ハンドラに渡されるViewはボタンインスタンスです。 Buttonをキャストしてメソッドを呼び出します。

public void onClick(View v) { 
    onClickListenerForTag("tagStr", v); 
    } 

private void onClickListenerForTag(final String tagStr, View v) { 
      assert (tagStr != null); 
      mTagStr = tagStr; 

      ImageButton button = (ImageButton)v; 
      button.setPressed(true); 
    } 
関連する問題