Android 中动态加载布局
我的应用程序需要 2 个屏幕,为此我使用 RelativeLayout
创建了两个不同的 XML
布局文件。每当我运行我的活动时就会加载一个布局文件。现在我想将第二个布局加载到同一个 Activity
上,当用户单击 OptionsMenu
中的按钮时,以及当用户按“后退”按钮时,第一个屏幕将加载而不是退出该应用程序。这样我就不需要在我的应用程序中创建另一个 Intent
。
My application requires 2 screens and for this I have created two different XML
layout files using RelativeLayout
. One layout file loads whenever I run my Activity. Now I want to load the second layout on to the same Activity
, when user click on a button in OptionsMenu
and also when user press Back button the first screen loads instead of exiting the application. So that i don't need to create another Intent
in my application.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您是否尝试重新调用 setContentView ?
或者您可能更喜欢使用 ViewFlipper,
此处就是一个很好的例子。
Did you try re-calling the setContentView?
Or you may prefer using the ViewFlipper,
Good example here.
我建议采用一种更简单的方法。
将两个布局放入单个 XML 中,并根据需要适当地显示/消失它们。我认为你不需要更复杂的东西:-)
I would suggest a rather simpler means.
Put both your layouts in the single XML and show/gone them appropriately as need be. I dont think u need anything more complicated :-)
理想情况下,您的应用程序中应该存在两种不同的活动。
您可以在视图中添加或删除视图组件,但如果您正在寻找两个完全不同的屏幕,那么我建议您进行新的活动。
我不明白你的意思“当用户按下 Bakc 按钮时,第一个屏幕会加载而不是退出应用程序”
如果你不想显示第一个屏幕,只需完成()活动。
Ideally there should be two different activities present in your application.
You can add or remove a view component in a view but if you are looking for two completely different screens then i would suggest you to go for a new activity.
I dint get what you meant by "and also when user press Bakc button the first screen loads instead of exiting the application"
If you dont want to show the first screen just finish() the activity.