2015-02-04 2 views
0

Я хочу сделать кнопку изображения в классе java без использования XML (динамический интерфейс).кнопка clickable image в java без xml в android

Я могу сделать это, но я не могу подключиться к onClick void.

Может кто-нибудь мне помочь?

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    // setContentView(R.layout.main); 
    LayoutParams params = 
      new TableRow.LayoutParams(
        LayoutParams.FILL_PARENT, 
        LayoutParams.WRAP_CONTENT); 

    TableRow table = new TableRow(this); 
    table.setOrientation(TableRow.VERTICAL); 


    ImageButton ib = new ImageButton(this); 
    ib.setImageResource(R.drawable.one); 
    ib.setLayoutParams(params); 
    table.addView(ib); 

    TableRow.LayoutParams layoutParams= 
      new TableRow.LayoutParams(
        LayoutParams.FILL_PARENT, 
        LayoutParams.WRAP_CONTENT); 
    this.addContentView(table, layoutParams); 

} 
public void onClick(View v){ 

    Toast.makeText(getBaseContext(),"This button clicked",Toast.LENGTH_SHORT).show(); 


} 

ответ

0

Вам нужно назначить OnClickListener перед использованием его

Если вы реализуете OnClickListener в деятельности, то использовать (я думаю, что вы, потому что у вас есть onClick метод определен)

ib.setOnClickListener(this); 

Если нет, то сделать это

ib.setOnClickListener(new View.OnClickListener() 
{ 
    public void onClick(){ 
     // Do as required 
    } 
}); 
+0

i do но это дало ошибку с этим комментарием: can not resolve method ... – farshad

+0

, пожалуйста, сообщите полную ошибку? Какой метод не разрешен? – Rohit5k2

+0

ib.setOnclickListener (новый View.OnClickListener() { общественного недействительного OnClick (View v) { Toast.makeText (getBaseContext(), "интерактивная кнопка", Toast.LENGTH_SHORT) .show(); } }); – farshad

1

Вы пропустили ib.setOnClickListener(...);. Если ваша деятельность реализует View.OnClickListener, то было бы

ib.setOnClickListener(this);

+0

i do, но это дало ошибку с этим комментарием: can not solve method – farshad