将视图插入另一个视图OnClick in Android

时间:2015-02-23 14:44:41

标签: java android

我试图用一堆瓷砖制作一个主屏幕(想想Windows 8),点击后,子菜单会在点击的瓷砖下面滑出(想想iOS文件夹)。

我知道我可以用于滑出效果的属性动画,但我不确定如何实际插入新视图。它可能是基于XML的LinearLayout(可能)。

此函数正在从XML调用onPress:

    public void mainButtonPress(View v){
    switch(v.getId()){
        case R.id.btn1:
            Log.d("info","Button ONE");
            break;
        case R.id.btn2:
            Log.d("info","Button TWO");
            break;
        case R.id.btn3:
            Log.d("info","Button THREE");
            break;
        case R.id.btn4:
            Log.d("info","Button FOUR");
            break;
        case R.id.btn5:
            Log.d("info","Button FIVE");
            break;
        case R.id.btn6:
            Log.d("info","Button SIX");
            break;
    }
}

任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

查看ViewGroup类的addView方法(LinearLayout和其他布局继承自哪个方法)。这会将您提供的视图作为参数添加到布局中。

例如,假设您有一个名为myLayout的LinearLayout,您已在Activity代码中获得了引用。按下按钮或其他任何内容时,要么在代码中创建要添加到布局的视图,要么从XML中对其进行充气,然后在布局上调用addView,传递要添加的视图。

LinearLayout myLayout = // Get the layout...

...

View viewToAdd = // Get view to add...
mylayout.addView(viewToAdd);

对于具有垂直方向的LinearLayout,这会将新视图添加到布局中已有的任何内容中(我假设您单击的按钮最初会在此处)。

很难准确理解你在这里做了多少,但无论如何这应该是你要留意的东西。

Android文档中的链接: http://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View)