gpt4 book ai didi

android - 在android中的单独 Activity 中更改textview

转载 作者:太空狗 更新时间:2023-10-29 16:09:47 25 4
gpt4 key购买 nike

我有一个从数据库中提取信息的登录页面,然后我想使用这些信息中的一些来填充新页面/Activity 上的不同 TextView 。我可以在我有提交按钮的 Activity 上获得一个 TextView 来更改,但是当我尝试在我的第二个 Activity 上更改 TextView 时,它就崩溃了(应用程序意外停止)。

这是我更改 TextView 的代码(其中 txtID 是我在单独 Activity 中的 TextView )

TextView test2 = (TextView) findViewById(R.id.txtID);
test2.setText(test);

我的单独 Activity 的 xml

<TextView android:text="TextView" android:id="@+id/txtID"
android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>

哦,我为我的登录页面使用了一个表格 View ,然后为我的其余页面使用了选项卡。我对此很陌生,很抱歉,如果这很简单,但我们将不胜感激! :-)

最佳答案

您不想直接触摸另一个 Activity 的 UI 元素。您可以使用 bundles来回传递信息。这是一个例子:

假设我们有 Activity A,它有一些信息作为一个字符串,它想要传递成为 Activity B 中的 TextView 的文本。

//Setup our test data
String test = "Some text";
//Setup the bundle that will be passed
Bundle b = new Bundle();
b.putString("Some Key", test);
//Setup the Intent that will start the next Activity
Intent nextActivity = new Intent(this, ActivityB.class);
//Assumes this references this instance of Activity A
nextActivity.putExtras(b);

this.startActivity(nextActivity);

现在在 Activity B 的 onCreate 方法中,我们可以获取该字符串并将其作为文本分配给 TextView,就像您所做的那样

public void onCreate(Bundled savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); //Setup some layout, set to your own

String test = getIntent().getExtras().getString("Some Key");
TextView test2 = (TextView) findViewById(R.id.txtID);
test2.setText(test);
}

关于android - 在android中的单独 Activity 中更改textview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5546325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com