Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 扩展布局并更改textview的值_Android - Fatal编程技术网

Android 扩展布局并更改textview的值

Android 扩展布局并更改textview的值,android,Android,我面临一个问题。我不知道这是怎么回事,或者我错过了什么 我想通过…从其他活动更改textview的文本 1.扩大其他活动的布局。 2.获取文本视图 3.在textview上调用setText() 我这样做了,但当我切换回使用该布局的活动时,文本与之前相同。 因此,我冒昧地检查了一个新的项目,在mainactivity上只有“hello world”文本视图,在另一个活动上更改了“hello world”文本视图的文本。 但我得到了同样的结果。文本没有改变。它甚至没有给我任何例外。应用程序正常运行

我面临一个问题。我不知道这是怎么回事,或者我错过了什么
我想通过…
从其他活动更改textview的文本 1.扩大其他活动的布局。
2.获取文本视图
3.在textview上调用setText()
我这样做了,但当我切换回使用该布局的活动时,文本与之前相同。
因此,我冒昧地检查了一个新的项目,在mainactivity上只有“hello world”文本视图,在另一个活动上更改了“hello world”文本视图的文本。
但我得到了同样的结果。文本没有改变。它甚至没有给我任何例外。应用程序正常运行。我不明白为什么会发生这种事?
代码
MainActivity.java

公共类MainActivity扩展活动
{

}

MonActivity.java-活动#2

公共类MonActivity扩展活动
{

}

您不能(您可以通过静态视图定义执行此操作,但不应执行!)直接从另一个活动更改活动的视图值/属性。使用startActivityForResult并在ActivityResult方法上传递并获取更改的/新的值

我不在这里分享任何例子或链接。您可以找到许多示例,只需搜索startActivityForResult;)

编辑:如果在活动中展开布局,它将创建视图的新实例。因此,对充气布局所做的更改将仅应用于该实例

我希望我的评论能对您有所帮助。

您不能(您可以通过静态视图定义来做到这一点,但不应该这么做!)直接从另一个活动更改活动的视图值/属性。使用startActivityForResult并在ActivityResult方法上传递并获取更改的/新的值

我不在这里分享任何例子或链接。您可以找到许多示例,只需搜索startActivityForResult;)

编辑:如果在活动中展开布局,它将创建视图的新实例。因此,对充气布局所做的更改将仅应用于该实例


我希望我的评论能对您有所帮助。

好的。我知道如何修改课文。笑:P。但我想知道为什么我不能这样做。这在您的答案编辑中得到了回答。谢谢。那你为什么不投票给帮助你解决问题的aegan,只要支持他的答案就行了。@BetteDevine我已经接受了他的答案。我也会那样做好啊我知道如何修改课文。笑:P。但我想知道为什么我不能这样做。这在您的答案编辑中得到了回答。谢谢。那你为什么不投票给帮助你解决问题的aegan,只要支持他的答案就行了。@BetteDevine我已经接受了他的答案。我也会那样做
public static TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    tv = (TextView) findViewById(R.id.lolll);
    tv.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View v)
        {
            startActivity(new Intent(MainActivity.this, MonActivity.class));
        }
    });

}

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_mon);
    LayoutInflater inf = getLayoutInflater();
    RelativeLayout rel = (RelativeLayout) inf.inflate(R.layout.activity_main, null);
    TextView tv = (TextView) rel.findViewById(R.id.lolll);
    tv.setText("finger crossed");
}

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.mon, menu);
    return true;
}