Java 如何可能在非父活动中更改小部件

Java 如何可能在非父活动中更改小部件,java,android,android-activity,Java,Android,Android Activity,当我点击按钮时,我需要更改属于此活动的活动和文本视图中的文本,我尝试这样做: 在我的活动中: public void onClick(View v) { switch (v.getId()) { case R.id.MondayButton: NameDiscipline = (TextView) findViewById(R.id.Discipline8); NameDiscipline.setText("Some Text");

当我点击按钮时,我需要更改属于此活动的活动和文本视图中的文本,我尝试这样做:

在我的活动中:

    public void onClick(View v) {
    switch (v.getId()) {
    case R.id.MondayButton:
        NameDiscipline = (TextView) findViewById(R.id.Discipline8);
        NameDiscipline.setText("Some Text");
        Intent intent = new Intent(this, SheduleForTheDayActivity.class);
        startActivity(intent);
        break;

    default:
        break;
    }
在OtherActivity.xml中:

  <TextView
                android:id="@+id/Discipline8"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center" />
代码工作正常。

您需要的是在活动类中使用规程8。让onReceive方法更改文本。然后,在MyActivity中,调用

LocalBroadcastManager.getInstance(this)
                     .sendBroadcast(new IntentFilter("some string to use as action"));
Stricte8文本视图不是MyActivity内容视图的一部分,但您正在尝试访问它。我猜你对findViewById的调用返回空值。
LocalBroadcastManager.getInstance(this)
                     .sendBroadcast(new IntentFilter("some string to use as action"));