编辑:移动了提问者实际想要的顶部.
如果要在创建活动时将数据传递给活动,请在其中使用的意图.putExtra()上调用Intent版本startActivity().然后,您可以使用getIntent().getStringExtra()(例如)在活动中获取额外的字符串.
假设您在第一个被调用的活动中有一段字符串数据myString.
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(EXTRA_NAME_CONSTANT, myString);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
现在,在你的新活动中onCreate你会做:
String myString = this.getIntent()
.getStringExtra(EXTRA_NAME_CONSTANT, "default return value here");
Run Code Online (Sandbox Code Playgroud)
几点说明:
EXTRA_NAME_CONSTANT,我的意思是使字符串常量为"your.package.name.SomeString",例如"com.example.MyString".就个人而言,我甚至会使用资源(在表单中访问getString(R.string.extra_my_string))来获取额外的名称.他们建议您在其前面加上您的包名称.考虑使用资源限定符来提供替代布局,而不是针对不同的布局方向进行separete活动.
总而言之,在结构中制作两个布局,如下所示:
/res/layout/yourlayout.xml
/res/layout-land/yourlayout.xml
Run Code Online (Sandbox Code Playgroud)
两个XML文件的名称相同.然后在一个中创建默认纵向布局,在另一个中创建横向版本.
当您在布局中充气时onCreate(以及在运行期间布局更改时自动执行此操作),它将为您选择正确的布局.
| 归档时间: |
|
| 查看次数: |
8259 次 |
| 最近记录: |