java - 尝试动态定义布局

标签 java android android-layout

比如说我有几个布局,我想在它们之间随机选择..

所以不要使用像这样的静态布局名称:

setContentView(R.layout.main_layout);

return inflater.inflate(R.layout.main_layout, container, false);

我会做类似的事情:

public String layoutName = 'main_layout';
setContentView(R.layout[layoutName]);
// OR
return inflater.inflate(R.layout[layoutName], container, false);

以上不起作用(在 JS 中它确实起作用)

有没有办法用 java 来做。

最佳答案

    int resID = getResources().getIdentifier(layoutName,"layout", 
    getActivity().getPackageName());    
    setContentView(resID);

或者

    int resID = getResources().getIdentifier(layoutName,"layout", 
    getActivity().getPackageName());         
    View v = inflater.inflate(resID,container, false);

关于java - 尝试动态定义布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18368391/

相关文章:

android - 在 Android 上获取 OAuth2 token 时 UNREGISTERED_ON_API_CONSOLE

android - 查询失败 Google Drive Android

android - Android 上的 Firebase 请求永远不会完成

java - ScrollView 中的静态图像

android - 屏幕上的阴影区域

java - Java Swing 中使用索引的 For 循环

java - 同步两个 JavaFx WebView 的滚动条

java - 在 Ubuntu 中无法在没有 sudo 的情况下启动 sqldeveloper

java - 在 Spring Security 中实现大量级联角色和权限的更好方法?

android - 回收站 View 项目中的文本超出屏幕范围