2012-06-05 57 views
0

我有一些图标的布局。当我触摸底部的一个图标时,底部屏幕的1/4将成为我自己创建的选项菜单。安卓淡入淡出/菜单选项暗淡

我的目标是褪色/昏暗现在屏幕的其余部分,除了底部的1/4。也可以使这部分屏幕处于非活动状态,例如android中的optionMenu。

你有什么想法我怎么能做到这一点? Shuld我创建了两个独立的布局,一个是图标,另一个是菜单?

谢谢。

这里是马初始布局:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@drawable/bg" > 


<RelativeLayout 
    android:id="@+id/mainRelativeLayout" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginLeft="10dp" 
    android:layout_marginTop="10dp" > 

    <TextView 
     android:id="@+id/CenterTextViewJournals" 
     android:layout_width="wrap_content" 
     android:layout_height="20dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:text="   " /> 

    <ImageView 
     android:id="@+id/invisibleImageView" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" /> 

    <ImageView 
     android:id="@+id/EditorialBoard" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_above="@+id/CenterTextViewJournals" 
     android:layout_centerHorizontal="true" 
     android:onClick="goEditorialBoard" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/Contact" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_alignBottom="@+id/CenterTextViewJournals" 
     android:layout_toRightOf="@+id/CenterTextViewJournals" 
     android:onClick="goContact" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/AimsAndScope" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_alignBottom="@+id/CenterTextViewJournals" 
     android:layout_toLeftOf="@+id/CenterTextViewJournals" 
     android:onClick="goAimsAndScope" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/Articles" 
     android:layout_width="180dp" 
     android:layout_height="180dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:onClick="goArticles" 
     android:paddingBottom="9px" 
     android:paddingLeft="6px" 
     android:paddingRight="8px" 
     android:paddingTop="4px" 
     android:src="@drawable/button_about_active" /> 

</RelativeLayout> 


<ImageView 
    android:id="@+id/StartSelectingDifferentJournal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:scaleType="fitXY" 
    android:src="@drawable/journal_selecting_barr" /> 

<Gallery 
    android:id="@+id/gallery" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/SelectDifferentJournaleditText" 
    android:layout_alignParentLeft="true" 
    android:gravity="bottom" /> 

<EditText 
    android:id="@+id/SelectDifferentJournaleditText" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_alignParentBottom="true" 
    android:visibility="gone" 
    android:hint="Search Journal"> 
</EditText> 

<ImageView 
    android:id="@+id/SelectingDifferentJournal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/gallery" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:gravity="bottom" 
    android:scaleType="fitXY" 
    android:src="@drawable/journal_selecting_barr" /> 

+0

你有没有在framelayout中的一切? –

+0

我实际上在RelativeLayout中有一切。 –

回答

1

好吧,这里是这样做的一个简单的方法,但你将不得不修改您的布局设置。

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
<RelativeLayout 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@drawable/bg" > 


<RelativeLayout 
    android:id="@+id/mainRelativeLayout" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginLeft="10dp" 
    android:layout_marginTop="10dp" > 

    <TextView 
     android:id="@+id/CenterTextViewJournals" 
     android:layout_width="wrap_content" 
     android:layout_height="20dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:text="   " /> 

    <ImageView 
     android:id="@+id/invisibleImageView" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" /> 

    <ImageView 
     android:id="@+id/EditorialBoard" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_above="@+id/CenterTextViewJournals" 
     android:layout_centerHorizontal="true" 
     android:onClick="goEditorialBoard" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/Contact" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_alignBottom="@+id/CenterTextViewJournals" 
     android:layout_toRightOf="@+id/CenterTextViewJournals" 
     android:onClick="goContact" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/AimsAndScope" 
     android:layout_width="120dp" 
     android:layout_height="120dp" 
     android:layout_alignBottom="@+id/CenterTextViewJournals" 
     android:layout_toLeftOf="@+id/CenterTextViewJournals" 
     android:onClick="goAimsAndScope" 
     android:src="@drawable/button_about_active" /> 

    <ImageView 
     android:id="@+id/Articles" 
     android:layout_width="180dp" 
     android:layout_height="180dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:onClick="goArticles" 
     android:paddingBottom="9px" 
     android:paddingLeft="6px" 
     android:paddingRight="8px" 
     android:paddingTop="4px" 
     android:src="@drawable/button_about_active" /> 

</RelativeLayout> 


<ImageView 
    android:id="@+id/StartSelectingDifferentJournal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:scaleType="fitXY" 
    android:src="@drawable/journal_selecting_barr" /> 
</RelativeLayout> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/dimmer_layout"/> 
<RelativeLayout 
    layout_width="match_parent" 
    layout_height="match_parent"> 
<Gallery 
    android:id="@+id/gallery" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/SelectDifferentJournaleditText" 
    android:layout_alignParentLeft="true" 
    android:gravity="bottom" /> 

<EditText 
    android:id="@+id/SelectDifferentJournaleditText" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_alignParentBottom="true" 
    android:visibility="gone" 
    android:hint="Search Journal"> 
</EditText> 

<ImageView 
    android:id="@+id/SelectingDifferentJournal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/gallery" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:gravity="bottom" 
    android:scaleType="fitXY" 
    android:src="@drawable/journal_selecting_barr" /> 
</RelativeLayout> 
</FrameLayout> 

当菜单被打开,设置线性布局的背景为透明的黑色像0x55000000。

void onMenuOpen() { 
    openTheMenu(); 
    LinearLayout llDimmer = (LinearLayout)findViewById(R.id.dimming_layout); 
    llDimmer.setBackgroundColor(0x55000000); 
} 

然后,您可以在菜单关闭后将背景颜色设置为0x00000000。

+0

非常感谢你@BananaNutTruffles,我想要像你说的那样做,但是有一个问题,我有一个复杂的布局,有多个相对布局,不知道如何使用你的方法,我添加了我的初始布局我的问题,如果你能帮助它会很好。 –

+0

XML中的哪一个是你的菜单视图 –

+0

在菜单中想要有这些项:id/gallery,id/SelectDifferentJournaleditText和id/SelectingDifferentJournal –