我正在做一个应用程序,其中包含一个带有复选框的电话联系人列表视图。我已经找到了一个编码,适合我的项目。它工作得很好,但它不像我想要的那样运行。我不希望'respondText'出现在吐司功能,我只是希望它显示在按钮单击后的另一个新的活动。我已经尝试过意图函数,我把它放在吐司功能下,但应用程序不执行。也许我只是放错了函数,处理这个问题的实际解决方案是什么?
private void checkButtonClick() {
Button myButton = (Button) findViewById(R.id.findSelected);
final TextView textView = (TextView) findViewById(R.id.showAppend);
myButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
StringBuffer responseText = new StringBuffer();
responseText.append("The following were selected...n");
ArrayList<Contacts> countryList = dataAdapter.contactList;
for (int i = 0; i < countryList.size(); i++) {
Contacts country = countryList.get(i);
if (country.isSelected()) {
responseText.append("n" + country.getName());
}
}
//Toast.makeText(getApplicationContext(), responseText,
//Toast.LENGTH_LONG).show();
Intent startNewAct = new Intent(ListViewCheckboxesActivity.thisthis, DisplayAppendActivity.class);
startActivity(startNewAct);
textView.setText(responseText);
}
});
}
这是另一个新活动:
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class DisplayAppendActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.displayappend);
TextView textView = (TextView) findViewById(R.id.showAppend);
String responseText = getIntent().getExtras().getString("responseText");
textView.setText(responseText);
}
}
你可以通过Intent发送数据。当从intent启动activity时,你可以使用:
Intent startNewAct = new Intent(ListViewCheckboxesActivity.this, DisplayAppendActivity.class);
startNewAct.putExtra("responseText", responseText);
startActivity(startNewAct);
你可以在另一个活动onCreate:
中获得这个responseTextString responseText = getIntent().getExtras().getString("responseText");