Поместите imageView в середине другого - PullRequest
0 голосов
/ 29 мая 2018

Я кодирую спиртовой уровень яблочком, используя акселерометр устройства, теперь у меня есть несколько вопросов:

1.Мой Bullseye Imageview находится в центре, как я могу установить центр ImageViewX: 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.Как я могу наклеить свой пузырь при старте в середине яблочка и сделать углы, чтобы пузырь не мог выйти изРадиус яблочка?

   <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 для акселерометра.

...