Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在这件事上需要帮助吗_Java_Android_Touch Event - Fatal编程技术网

Java 在这件事上需要帮助吗

Java 在这件事上需要帮助吗,java,android,touch-event,Java,Android,Touch Event,我正在为一个学校项目编写一个小应用程序:概念很简单:播放一首歌曲,同时在屏幕上随机弹出一个圆圈,用户必须点击屏幕才能获得分数 我发现这个圆圈的代码运行良好: public class Partie extends AppCompatActivity { RelativeLayout relativeLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedIns

我正在为一个学校项目编写一个小应用程序:概念很简单:播放一首歌曲,同时在屏幕上随机弹出一个圆圈,用户必须点击屏幕才能获得分数

我发现这个圆圈的代码运行良好:

public class Partie extends AppCompatActivity  {

RelativeLayout relativeLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(new SplashLaunch(this));
}

public class SplashLaunch extends View {

    Handler cool = new Handler();
    ObjectAnimator aa = new ObjectAnimator();
    Paint newPaint = new Paint();
    int randomWidthOne = 0;
    int randomHeightOne = 0;
    private int radiusOne = 150;
    final int redColorOne = Color.RED;
    final int greenColorOne = Color.GREEN;
    private int lastColorOne;
    private final Random theRandom = new Random();

    public SplashLaunch(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }

    private final Runnable circleUpdater = new Runnable() {
        @SuppressLint("NewApi")
        @Override
        public void run() {
            lastColorOne = theRandom.nextInt(2) == 1 ? redColorOne : greenColorOne;
            newPaint.setColor(lastColorOne);
            cool.postDelayed(this, 1500);  // Time between each circle to pop on the screen
            int x = 0;
            while (x <= 200) {  // x = transparency : 0 ==> non visible  , 255 ==> visible
                newPaint.setAlpha(x);
                x++;
            }
            invalidate();
        }
    };

    @Override
    protected void onAttachedToWindow() {
        super.onAttachedToWindow();
        cool.post(circleUpdater);
    }

    protected void onDetachedFromWindow() {
        super.onDetachedFromWindow();
        cool.removeCallbacks(circleUpdater);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        // TODO Auto-generated method stub
        super.onDraw(canvas);

        if (theRandom == null) {
            randomWidthOne = (int) (theRandom.nextInt(Math.abs(getWidth() - radiusOne / 2)) + radiusOne / 2f);
            randomHeightOne = (theRandom.nextInt((int) Math.abs((getHeight() - radiusOne / 2 + radiusOne / 2f))));
        } else {
            randomWidthOne = (int) (theRandom.nextInt(Math.abs(getWidth() - radiusOne / 2)) + radiusOne / 2f);
            randomHeightOne = (theRandom.nextInt((int) Math.abs((getHeight() - radiusOne / 2 + radiusOne / 2f))));
        }
   } } }
我是初学者,欢迎任何帮助:)


提前谢谢

我想你可能想要
SplashLaunch circle=新的SplashLaunch(这个)后跟
圆圈.setOnTouchListener
 public boolean onTouch(View v, MotionEvent me) {
        switch (me.getAction()) {
            case MotionEvent.ACTION_DOWN;
                x = me.getX();
                y = me.getY();
        }

        return true;
    }