我制作了一个简单的Android程序。
它的作用: 启动时会显示文本和按钮。按钮上的数字会在每次触摸时增加。在2到10之间的按钮上的随机数字处,图片显示为+ ssoundclip。
这就是它的作用。因此,当它显示图片时,应用程序已完成。
我现在要做的是创建一个触摸功能,将我引导回应用启动页面。为此,我需要你的帮助。我曾尝试在互联网上寻找解决方案,但由于我是初学者,我不知道如何在我的代码中实现它。
这是我的代码:
package net.ibasic;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
public class HelloAndroidActivity extends Activity implements OnClickListener {
private int i = 0;
public int low = 2;
public int high = 10;
public int num = low + (int) ( Math.random()*(high -low) + 0.5 );
MediaPlayer mpAudio;
MediaPlayer mpAudio1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
//creating the setContentView by java-code instead of Xml
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
TextView textView = new TextView(this);
textView.setText(R.string.hello);
linearLayout.addView(textView);
//creating a button for the app
Button button = new Button(this);
linearLayout.addView(button);
setContentView(linearLayout);
update(button);
//adding buttonListener
button.setOnClickListener(this);
mpAudio = MediaPlayer.create(this, R.raw.kitten);
mpAudio1 = MediaPlayer.create(this, R.raw.scary);
}
private void update(Button button) {
button.setText("Amount of Clicks " + i++);
}
public void onClick(View button) {
update((Button)button);
if (i==num){
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
if (num % 2 == 0){
mpAudio.start();
ImageView imageView = new ImageView(this);
imageView.setImageResource(R.drawable.kitten);
TextView textView1 = new TextView(this);
textView1.setText(R.string.kittentext);
linearLayout.addView(textView1);
linearLayout.addView(imageView);
}
else{
mpAudio1.start();
ImageView imageView = new ImageView(this);
imageView.setImageResource(R.drawable.scary);
TextView textView1 = new TextView(this);
textView1.setText(R.string.scarytext);
linearLayout.addView(textView1);
linearLayout.addView(imageView);
}
setContentView(linearLayout);
}
}
}
答案 0 :(得分:2)
完成后,请使用以下代码重新启动您的活动:
Intent intent = getIntent();
finish();
startActivity(intent); //
您可以通过单击按钮来执行此操作/也可以使用按钮对象上的performClick()
方法自动按钮单击,或者随时随地。