传递字符串setOnClickListener
等待报告!!!我读了关于“传递参数与setOnClickListener”的一切,但我没有找到解决我的问题。传递字符串setOnClickListener
String citazione = new String(data[position]);
share_btn.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, citazione);
sendIntent.setType("text/plain");
v.getContext().startActivity(Intent.createChooser(sendIntent, v.getResources().getText(R.string.send_to)));
}
});
我应该把字符串“citazione”在6线,但因为我在8号线使用它,我不能编辑View v
。 我试过了(getContext()
,startActivity()
,v
之前)但没有任何结果。
我该怎么办?
刚刚做完:
final String citazione = new String(data[position]);
OMG我爱你:* – user3223863
是的,这很简单。我建议你阅读http://en.wikipedia.org/wiki/Final_%28Java%29中的“最终和内部类”部分。如果你想在匿名内部类中使用它们,你应该总是声明你的变量为final。 – nikis
首先我会宣布的onClick在XML像这样:
<Button
...
android:onClick="onButtonClick"
....
/>
然后我会做citazione类变量
private String citazione;
活动中的按钮的onClick是
public void onButtonClick(View view) {
//do what you want here with citazione
}
运行此代码时会发生什么?我的意思是,什么不适合你? – csmckelvey