如何在xml布局中添加某些视图的子视图

时间:2012-04-02 12:20:32

标签: android android-layout

我是初学者编程的android。我正在搜索如何在当前窗口布局上创建透明子视图的信息。

我创建了简单的布局,这是源:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Simple text" />

</LinearLayout>

现在我想在按下导航按钮时创建一个视图。我希望在这个布局上添加透明度大约40%。看起来应该是这样的:

enter image description here

此外,添加按钮,投放框等也应该很容易,我可以轻松删除此视图。

也许有人这样做了,我可以分享想法,怎么做?

感谢。

2 个答案:

答案 0 :(得分:0)

查看此内容并以编程方式执行

view.getBackground().setAlpha(100); // to make background transparent

您可以使用PopupWindow在父视图之上显示如下

View mainview ;
PopupWindow popupwindow;


public void onCreate(Bundle savedInstanceState){

LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

     mainview = inflater.inflate(R.layout.main, null, false);
     setContentView(mainview);

    // load sub menu from xml layout in popupwindow
      View submenu_popup = inflater.inflate(R.layout.submenu_popup, null, false);

// make backgraound transparent of popup submenu
        submenu_popup.getBackground().setAlpha(100);

        popupwindow = new PopupWindow(submenu_popup ,300,300,false);
        popupwindow.setOutsideTouchable(true);
        popupwindow.setTouchable(true);

}


// call it on click of button or menu to show submenu
public void onClickButton(){

    int x=0,y=0;
// show popupwindow on x, y position in main view (parent view) by using this
    popupwindow.showAtLocation(mainview , Gravity.NO_GRAVITY, x, y);

}

答案 1 :(得分:0)

可能你应该学习如何使用“android:theme”属性