Как добавить подпредставление некоторого представления в макете XML - PullRequest
0 голосов
/ 02 апреля 2012

Я начинающий программировать 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

Также должно быть легко добавить кнопки, Drop Box или другое, и я мог бы легко удалить это представление.

Возможнокто-то сделал это и мог бы поделиться идеями, как это сделать?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 апреля 2012

Может быть, вы должны научиться использовать свойство "android: theme"

0 голосов
/ 03 апреля 2012

проверьте это и сделайте программно

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);

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...