我刚刚开始在Eclipse中使用可点击的TextViews。下面代码中的行:
t2.setOnClickListener(this); seems to be having a problem.
我尝试了各种方法,比如setOnTouchListener等来处理用户点击我的TextViews的点击事件,但我无法确定哪个方法(如果有的话)适合可点击的TextViews。
public class Soundboard extends Activity implements OnClickListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.soundboard);
TextView t2 = (TextView) findViewById(R.id.textView5);
t2.setFocusable(true);
t2.setOnClickListener(this);
t2.setOnClickListener(new View.setOnClickListener() {
public void onClick(View view) {
mp.start();
}
});
}
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
}
答案 0 :(得分:0)
在上面的代码中,您将onClickListener
设置两次,这是不必要的。第二次设置它将覆盖第一次,点击的结果应该是执行mp.start();
您能更详细地描述一下您的问题是什么吗?运行应用程序时会发生什么或不发生什么?
答案 1 :(得分:0)
TextView t2 = (TextView) findViewById(R.id.textView);
t2.setOnClickListener(new View.setOnClickListener() {
public void onClick(View view) {
mp.start();
}
});
OR
TextView t2 = (TextView) findViewById(R.id.textView);
t2.setOnClickListener(this);
@Override
public void onClick(View v) {
if(v == t2){
// logic
}
}
这是设置点击侦听器的正确方法。