我正在开发一个应用程序,其中包含带有复选框的电话联系人 ListView 。我找到了适合我的项目的编码。它工作得很好,但它没有按照我想要的方式运行。我不希望“respondText”出现在 toast 功能中,我只想在单击按钮后将其显示在另一个新 Activity 中。我已经尝试过 Intent 功能,我将其放在 toast 功能下,但应用程序不执行。也许我只是放错了功能,处理这个问题的实际解决方案是什么?这是它:
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);
}
});
}
这是另一项新 Activity :
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);
您可以在另一个 Activity onCreate 中获取此响应文本:
String responseText = getIntent().getExtras().getString("responseText");
关于javascript - 在另一个新 Activity 中显示附加功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33120540/