2

我怎样才能在Android中制作一个介绍屏幕,当应用程序启动时,只要屏幕上没有点击,它就会站在那里,然后自杀?我用图片做了布局,给它做了一个java类,但是不知道用什么方法

4

3 回答 3

3

试试这个

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" 
    android:id="@+id/linear_splash"
    android:background="@drawable/wallpaper"
    >

    </LinearLayout>

MainActivity.java

public class MainActivity extends Activity {
LinearLayout LL;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    LL=(LinearLayout) findViewById(R.id.linear_splash);
    LL.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            Intent intent=new Intent(MainActivity.this,Second.class);
            finish();
            startActivity(intent);
        }
    });

}

}

于 2013-03-23T17:20:16.503 回答
2

您可以使用初始屏幕作为背景图像进行活动。将android:onClick属性设置为一个方法,该方法启动一个新活动。

更新

我喜欢只使用单独布局的想法,因为您不需要进行额外的活动。但是,我不会使用按钮,因为通常您希望在没有任何动画的情况下点击屏幕,例如按下和释放。您仍然使用android:onClick布局上的属性

闪屏布局:

<View xmlns:android="http://schemas.android.com/apk/res/android"
    android:background "@drawable/splash_screen"
    android:onClick "removeSplash"
    android:clickable "true"
    ...
    />

在调用的方法中,您只需将启动布局替换为主要活动布局

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash_screen);
    ...
}

public void removeSplash(View view) {
    setContentView(R.layout.main);
    // any other initialization needed
}
于 2013-03-23T15:41:12.583 回答
2

如果你想让它变得简单,应该快速制作一个自定义对话框,你不必创建另一个活动。

于 2013-03-23T16:41:23.233 回答