2014-02-15 29 views
0

我想以全屏模式弹出一个图层(覆盖整个桌面)并隐藏点击。Android:如何显示全屏图层(隐藏onClick)?

我在Android的新的发展,并寻找像这样(伪):

$('#layer').on('click', function() { 
    this.hide(); 
}); 

<div id="layer" class="fullscreen">I'm a annoying layer, click me!</div> 

有没有人有一个解决方案,代码片段,教程或一些关键字,谷歌呢?我现在遵循一些基本的教程,并想知道我要专注于哪个方向。

在此先感谢!

+0

你想做到这一点的本地应用程序使用Java?或者在使用html/js(jquery)的web应用程序中? – FoamyGuy

+0

@FoamGuy原生,使用Java - 不幸的。 –

+0

我不明白为什么这是不幸的。但不管怎么说。到目前为止,你有什么?你已经有一个活动的应用程序? – FoamyGuy

回答

1

这是一个简单的活动,当屏幕被触摸时会自动关闭。

activity_popup.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:padding="@dimen/padding_medium" 
     android:text="Hello World!" /> 
</RelativeLayout> 

PopupActivity.java

public class PopupActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_popup); 
    } 
    @Override 
    public boolean onTouchEvent(MotionEvent event){ 
     if (event.getAction() == MotionEvent.ACTION_DOWN){ 
      finish(); 
      return true; 
     } 
     return false; 
    } 
} 

AndroidManifest.xml中

<activity 
    android:name="com.your.package.name.PopupActivity" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"> 
</activity> 
+0

这就是我想要的,谢谢!弹出的作品,但它不是“真正的”全屏。是否有可能将'match_parent'改为'device_width'和'device_height'? –

+0

不确定“真实”全屏的含义。如果您指的是通知栏和标题栏,但您可以通过将Theme.NoTitleBar.Fullscreen添加到manifest.xml文件中的活动中来摆脱这些问题。例如,看我的编辑。 – FoamyGuy

+0

很好,那就是我的意思。对不起,我的模糊问题,非常感谢! –