如何更改充气机的视图?

ssh

我想通过单击每个按钮来更改main_inflater的Inflated视图。

这是我的源代码;

我启动了我的两个按钮,并将setOnListener设置为两个按钮。

但是充气器只显示第一次充气的视图。

public class MainActivity extends Activity implements OnClickListener{

//optionmenu
int titleHeight;
int mainHeight;
int menuHeight;

//objects
TextView tv_status;
Tabbar tb_status;
LinearLayout titleLayout;
LinearLayout mainLayout;
LinearLayout menuLayout;
Button btn1;
Button btn2;

LayoutInflater main_inflater;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);
    layout_init();
    btn_init();


}   

public void layout_init() {

    DisplayMetrics displayMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    int deviceWidth = displayMetrics.widthPixels;
    int deviceHeight = displayMetrics.heightPixels;
    titleHeight = 2*deviceHeight/26;
    mainHeight = 21*deviceHeight/26;
    menuHeight = 3*deviceHeight/26;

    main_inflater = (LayoutInflater) this.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    //initiate Layouts
    titleLayout = (LinearLayout) findViewById(R.id.title_layout);
    mainLayout = (LinearLayout) findViewById(R.id.main_layout);
    menuLayout = (LinearLayout) findViewById(R.id.menu_layout);

    titleLayout.getLayoutParams().height = titleHeight;
    mainLayout.getLayoutParams().height = mainHeight;
    menuLayout.getLayoutParams().height = menuHeight;

    main_inflater.inflate(R.layout.viewpager_layout, mainLayout, true);


}

public void btn_init() {
    btn1 = (Button) findViewById(R.id.button1);
    btn2 = (Button) findViewById(R.id.button2);
    btn1.setOnClickListener(this);
    btn2.setOnClickListener(this);
}


@Override

public void onClick(View v) {
    if(v.getId() == R.id.button1)
    {
        main_inflater.inflate(R.layout.viewpager_layout, mainLayout, false);
    }
    if(v.getId() == R.id.button2)
    {
        main_inflater.inflate(R.layout.person_info, mainLayout, false);}

    Toast.makeText(getBaseContext() , "id : "+v.getId() ,Toast.LENGTH_SHORT ).show();


}

}

吐司消息正在工作。但是充气机并没有改变观点。请告诉我为什么bbbb

曼尼什·穆利马尼(Manish Mulimani)

在onClick方法中,您将false传递为要膨胀的最后一个参数。这样可以防止将膨胀后的布局附加到根目录。尝试将true作为最后一个参数传递,如下所示:

public void onClick(View v) {
    if(v.getId() == R.id.button1)
    {
        mainLayout.removeAllViews();
        main_inflater.inflate(R.layout.viewpager_layout, mainLayout, true);
    }
    if(v.getId() == R.id.button2)
    {
        mainLayout.removeAllViews();
        main_inflater.inflate(R.layout.person_info, mainLayout, true);
    }
    Toast.makeText(getBaseContext() , "id : "+v.getId() ,Toast.LENGTH_SHORT ).show();    
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检查布局充气机是否存在视图,然后再添加一个视图

来自分类Dev

充气机有什么区别

来自分类Dev

Android TextInputField充气机错误

来自分类Dev

Android片段中的充气机

来自分类Dev

无法使布局充气机工作

来自分类Dev

多个充气机上的ViewHolder

来自分类Dev

使用充气机创建Cardview

来自分类Dev

无法解决充气机和容器

来自分类Dev

无法使用Android版式充气机?

来自分类Dev

单击按钮时的充气机布局

来自分类Dev

一个适配器中有多个视图(充气机)

来自分类Dev

使用布局充气机创建自定义菜单,如何引用每个组件?

来自分类Dev

ActionbarSherlockBinding支持菜单充气机膨胀错误

来自分类Dev

ArrayAdapter中的错误-布局充气机出现错误

来自分类Dev

布局充气机中“附加到根”有什么用?

来自分类Dev

使用列表对演员表进行数组转换并将其传递给充气机

来自分类Dev

在布局充气机中“附加到根”有什么用?

来自分类Dev

将R.layout。*解析为整数值以便在充气机中使用

来自分类Dev

在片段中使用cardView时,布局充气机会发生错误吗?

来自分类Dev

为什么基本参数在布局充气机中出现错误?

来自分类Dev

不支持在API 20和更高版本的SupportLibrary上运行,并且发生充气机错误

来自分类Dev

无法理解布局充气机?它有什么作用?为什么我们使用它?

来自分类Dev

如何将ListView充气到视图

来自分类Dev

如何将ListView充气到视图

来自分类Dev

如何为充满自定义视图的网格充气?

来自分类Dev

如何给 FABRevealMenu 充气?

来自分类Dev

如何在android片段中保存多个充气布局视图状态?

来自分类Dev

如何更改视图深度?

来自分类Dev

如何更改视图深度?

Related 相关文章

热门标签

归档