/ / Wie zeichne ich eine Schaltfläche an einem bestimmten Ort in Android? - Android

Wie zeichne ich eine Schaltfläche an einem bestimmten Ort in Android? - Android

Ich möchte eine Schaltfläche in einer Android-Anwendung an einem bestimmten Punkt sagen (x, y), der Punkt wird zur Laufzeit generiert werden. Wie kann ich es erreichen?

Antworten:

0 für die Antwort № 1

Dafür können Sie verwenden AbsoluteLayout Das kann Ihnen helfen, die genaue Position der Ansicht durch die Eigenschaft der Ansicht einzustellen android:layout_x und android:layout_y

AKTUALISIEREN

Um x, y auf Laufzeit hinzuzufügen, überprüfen Sie diese,

Antwort 1

Antwort 2


0 für die Antwort № 2

Dafür verwenden Sie unter Code ...

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<Button android:layout_width="50dip"
android:layout_height="50dip"
android:id="@+id/button"/>

</RelativeLayout>

In diesem Code nur hinzufügen android:layout_margin indem Sie Rand verwenden, können Sie Ihren Knopf entsprechend Ihrer Anforderung einstellen .....


0 für die Antwort № 3

Wenn Sie ein LinearLayout verwenden:

Button button = (Button)findViewById(R.id.my_button);
LinearLayout.LayoutParams linParams =
(LinearLayout.LayoutParams)button.getLayoutParams();
linParams.setMargins(left, top, right, bottom);
button.setLayoutParams(linParams);

0 für die Antwort № 4

Ein ... kreieren RelativLayout Layout:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<Button android:id="@+id/mybutton"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>

</RelativeLayout>

Dann in deinem Code:

int posX = 10, posY = 20;
Button b = findViewById(R.id.mybutton);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(posX, posY, 0, 0);
b.setLayoutParams(layoutParams);