码迷,mamicode.com
首页 > 移动开发 > 详细

Android 使用全局变量传递数据

时间:2015-01-16 09:58:44      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

使用全局变量传递数据,所谓的全局变量类似于jee开发中的application变量。申明后,全局调用。只有当内存被清理后,才被销毁。否则一直可以调用。

还是使用点击一个button,传递一个数据到另一个页面中显示。

首先,新建工程,然后,打开mainActivity.xml文件,然后,添加button。

<Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="使用Application传递数据" />

先新建一个MyApp.java类,存储全局变量

public String name;
    @Override
    public void onCreate() {
        // TODO Auto-generated method stub
        super.onCreate();
        setName("hello");
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public MyApp() {
        // TODO Auto-generated constructor stub
    }

然后在MainActivity.java中,添加

private Button button;
    private MyApp myapp;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button)this.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                //获取全局变量数据
                myapp=(MyApp)getApplication();
                //myapp.setName("world");//可重新赋值
                Intent intent = new Intent(MainActivity.this,OtherActivity.class);
                startActivity(intent);
            }
        });
    }

新建布局文件other.xml文件加入

<TextView android:id="@+id/msg" android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>

新建OtherActivity.java文件

public class OtherActivity extends Activity {
    private MyApp myapp;
    private TextView textview;
    public OtherActivity() {
        // TODO Auto-generated constructor stub
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.other);
        textview = (TextView)this.findViewById(R.id.msg);
        myapp = (MyApp)getApplication();
        textview.setText("name---->"+myapp.getName());
    }
}

最后在清单文件中注意:先在标签application中加入

 <activity android:name=".OtherActivity"></activity>

再在application标签中加入属性android:name=".MyApp"

Android 使用全局变量传递数据

标签:

原文地址:http://www.cnblogs.com/zhujiabin/p/4227750.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!