将imageView放在另一个中间

时间:2018-05-29 11:51:37

标签: java android accelerometer

我使用设备的加速度计用靶心编码精神等级,现在我几乎没有问题:

1.我的Bullseye Imageview位于中心,如何设置ImageView的中心为加速度计的X:0 Y:0?

<ImageView
    android:id="@+id/bullseye"
    android:layout_width="250dp"
    android:layout_height="250dp"
    android:contentDescription="Bullseye"
    android:scaleType="centerInside"
    android:foregroundGravity="center"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:srcCompat="@drawable/bullseye" />


    ImageView b = (ImageView) findViewById(R.id.bullseye);
    b.setImageResource(R.drawable.bullseye);

2.如何在Bullseye中间开始粘贴我的泡泡并制作角落,以便不允许气泡离开Bullseye半径?

   <ImageView
    android:id="@+id/bubble"
    android:layout_width="fill_parent"
    android:scaleType="centerInside"
    android:foregroundGravity="center"
    android:layout_height="31dp"
    android:contentDescription="Bubble"
    android:src="@drawable/ic_bubble"
    app:layout_constraintEnd_toStartOf="@+id/yview"
    app:layout_constraintStart_toStartOf="@+id/yview"
    tools:layout_editor_absoluteY="16dp" />

    //ImageView Bubble
    mDrawable = (ImageView) findViewById(R.id.bubble);
    ImageView v = (ImageView) findViewById(R.id.bubble);
    v.setImageResource(R.drawable.ic_bubble);    


@Override
public void onSensorChanged(SensorEvent event) {

    if (event.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {

        //Zuweisen + Ausgabe
        x -= (int) event.values[0];
        y += (int) event.values[1];

        xview.setText("X: " + x);
        yview.setText("Y: " + y);

        mDrawable.setY(y);
        mDrawable.setX(x);
    }
}

Spiritlevel

我希望气泡(灰点)停留在绿色区域,并且绿色区域的中间是加速度计的X:0 Y:0。

0 个答案:

没有答案