2014-02-15 5 views
0

Я хотел бы открыть слой в полноэкранном режиме (накладывает весь рабочий стол) и спрятаться при нажатии.Android: Как отобразить полноэкранный слой (скрыть onClick)?

Я нового в Android развивается и ищет что-то вроде этого (псевдокод):

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

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

Кто-нибудь есть решение, фрагмент кода, учебник или несколько ключевых слов Google для? Сейчас я следую некоторым основным учебным пособиям и хотел бы узнать, в каком направлении я должен сосредоточиться.

Заранее благодарен!

+0

вы пытаетесь сделать это в собственное приложение с использованием Java? Или в веб-приложении, использующем html/js (jquery)? – FoamyGuy

+0

@FoamGuy Native, используя 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

Thats почти то, что я хотел, спасибо! Всплывающее окно работает, но это не «настоящий» полноэкранный режим. Можно ли изменить 'match_parent' на что-то вроде' device_width' и 'device_height'? –

+0

не уверен, что вы подразумеваете под «настоящим» полноэкранным. Если вы ссылаетесь на панель уведомлений и строку заголовка, хотя вы можете избавиться от них, добавив Theme.NoTitleBar.Fullscreen в действие в вашем файле manifest.xml. См. Мое редактирование, например. – FoamyGuy

+0

Отлично, вот что я имел в виду. Извините, за мой неопределенный вопрос и большое спасибо! –

Смежные вопросы