如何将MainActivity中的UI对象用于其他活动?

时间:2014-08-25 10:44:29

标签: android object user-interface

我正在尝试在Android中编写代码,以便将MainActivity中的UI对象用于其他活动。

我想说的是,我想使用MainActivity中的TextView对象在其他活动中打印文本。请仔细阅读以下代码,以便您正确理解我的要求。

MyCode:

MainActivity.java

package com.example.mytestui;

import android.os.Bundle;
import android.widget.TextView;
import android.app.Activity;


public class MainActivity extends Activity 
{

TextView txt;


@Override
protected void onCreate(Bundle savedInstanceState)
{

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    txt = (TextView) findViewById(R.id.txt);


} }

Demo.java

package com.example.mytestui;

import android.app.Activity;

public class DemoUI extends Activity
{


    // How can i use the TextView object from MainActivity to print a text ? //


}

请仔细阅读我的上述代码,请建议我,我该怎么做?

2 个答案:

答案 0 :(得分:2)

您可以使用意图从主活动中触发DemoUI,您可以将这些值作为附加内容传递。

Intent intent = new Intent(DemoUI.class);
i.putExtra("textValue", txt);
startActivity(intent);

然后在DemoUI Activty OnCreate中,您可以使用

检索值
Bundle extras = getIntent().getExtras();
String textVal = extras.getString("textValue");

答案 1 :(得分:-3)

<强> MainActivity.java

package com.example.mytestui;

import android.os.Bundle;
import android.widget.TextView;
import android.app.Activity;


public class MainActivity extends Activity 
{

  public static TextView txt;

  DemoUI du = new DemoUI();

@Override
protected void onCreate(Bundle savedInstanceState)
{

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    txt = (TextView) findViewById(R.id.txt);

    du.ui();


} }

<强> Demo.java

package com.example.mytestui;

import android.app.Activity;

public class DemoUI extends Activity
{


  public void ui()
  {

      MainActivity.txt.setText("Hello All");

  }}