在這個應用程序中,我正在動態(tài)創(chuàng)建一個帶有 LinearLayout、TextView 和兩個按鈕的計數(shù)器對象,我希望在類中使用 onClickListener,因為這似乎是最好的解決方案。我唯一能想到的是我不知何故弄錯了 ID 創(chuàng)建。動態(tài)創(chuàng)建事物的最佳實踐是什么?包括應用程序和所有代碼的屏幕截圖。public class Counter implements View.OnClickListener { private final int subButtonId = View.generateViewId();... private void createSubButton() { subButton = new Button(context); subButton.setLayoutParams(new LinearLayout.LayoutParams(buttonWidth, LinearLayout.LayoutParams.MATCH_PARENT, 0.5f)); subButton.setText("-"); subButton.setTextSize(buttonTextSize); subButton.setId(subButtonId); subButton.setGravity(Gravity.CENTER | Gravity.CENTER_HORIZONTAL); container.addView(subButton); sub = mainContainer.findViewById(subButtonId); sub.setOnClickListener(new MyOnClickListener() { @Override public void onClick(View v) { subCount(); disp.setText(count.toString()); } }); }}class MyOnClickListener implements View.OnClickListener { public MyOnClickListener() { } @Override public void onClick(View v) { }}計數(shù)器類:https : //pastebin.com/YTHUbGFf主類:https : //pastebin.com/p3p2PPEULogcat:https ://pastebin.com/0fYSKJyj應用圖片:https : //imgur.com/a/1Dfx4fJ
2 回答

紫衣仙女
TA貢獻1839條經驗 獲得超15個贊
您無需再次查找視圖。你可以打電話
subButton.setOnClickListener(...);
我看不出
container
和之間有任何關系mainContainer
。您將視圖添加到您的container
,但正在從mainContainer
添加回答
舉報
0/150
提交
取消