Reputation: 27
Hello everyone I've a problem: I'm approaching Android with Android Studio but I've found problems with XML, I'm trying to do a little calculator:
In the IDE I see all perfectly but when i start a simulation...
So... Can you help me? There's a way for anchor buttons and texts?
Thanks in advance and sorry for my bad bad english.
Upvotes: 0
Views: 201
Reputation: 318
Your xml can be modified like this, it works same only xml difference. Its happening because of <android.support.constraint.ConstraintLayout>
, your code has been modified by me check below.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="lorenzo.calculator.Calcolatrice"
android:orientation="vertical">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/editText"
android:layout_width="337dp"
android:layout_height="40dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 1" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/editText2"
android:layout_width="337dp"
android:layout_height="42dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 2" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1">
<Button
android:id="@+id/button"
android:layout_width="88dp"
android:layout_height="49dp"
android:text="-"
android:layout_weight="0.25"/>
<Button
android:id="@+id/button2"
android:layout_width="88dp"
android:layout_height="49dp"
android:text="/"
android:layout_weight="0.25"/>
<Button
android:id="@+id/button3"
android:layout_width="88dp"
android:layout_height="49dp"
android:text="+"
android:layout_weight="0.25"/>
<Button
android:id="@+id/button4"
android:layout_width="88dp"
android:layout_height="49dp"
android:text="*"
android:layout_weight="0.25"/>
</TableRow>
<TextView
android:id="@+id/textView"
android:layout_width="348dp"
android:layout_height="316dp"
android:textColor="@android:color/background_dark"
android:textSize="36sp" />
</LinearLayout>
Upvotes: 0
Reputation: 1129
To define a view's position in ConstraintLayout, you must add at least one horizontal and one vertical constraint for the view.(Documentation of ConstraintLayout)
Since you are implementing a simple View I will suggest using LinearLayout it's the best and easiest approach for this task.
Try below code.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:layout_editor_absoluteY="81dp"
tools:layout_editor_absoluteX="0dp">
<EditText
android:id="@+id/editText"
android:layout_width="337dp"
android:layout_height="40dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 1"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="16dp" />
<EditText
android:id="@+id/editText2"
android:layout_width="337dp"
android:layout_height="42dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 2"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="74dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp"
>
<Button
android:id="@+id/button4"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="*"
tools:layout_editor_absoluteX="288dp"
tools:layout_editor_absoluteY="137dp" />
<Button
android:id="@+id/button3"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="+"
tools:layout_editor_absoluteX="16dp"
tools:layout_editor_absoluteY="137dp" />
<Button
android:id="@+id/button2"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="/"
tools:layout_editor_absoluteX="198dp"
tools:layout_editor_absoluteY="137dp" />
<Button
android:id="@+id/button"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="-"
tools:layout_editor_absoluteX="106dp"
tools:layout_editor_absoluteY="137dp" />
</LinearLayout>
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/background_dark"
android:textSize="36sp"
tools:layout_editor_absoluteX="5dp"
tools:layout_editor_absoluteY="193dp" />
</LinearLayout>
Upvotes: 1
Reputation: 27
XML code:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="lorenzo.calculator.Calcolatrice"
tools:layout_editor_absoluteY="81dp"
tools:layout_editor_absoluteX="0dp">
<Button
android:id="@+id/button4"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="*"
tools:layout_editor_absoluteX="288dp"
tools:layout_editor_absoluteY="137dp" />
<Button
android:id="@+id/button3"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="+"
tools:layout_editor_absoluteX="16dp"
tools:layout_editor_absoluteY="137dp" />
<Button
android:id="@+id/button2"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="/"
tools:layout_editor_absoluteX="198dp"
tools:layout_editor_absoluteY="137dp" />
<EditText
android:id="@+id/editText"
android:layout_width="337dp"
android:layout_height="40dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 1"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="16dp" />
<EditText
android:id="@+id/editText2"
android:layout_width="337dp"
android:layout_height="42dp"
android:ems="10"
android:inputType="textPersonName"
android:text="Numero 2"
tools:layout_editor_absoluteX="12dp"
tools:layout_editor_absoluteY="74dp" />
<Button
android:id="@+id/button"
android:layout_width="56dp"
android:layout_height="49dp"
android:text="-"
tools:layout_editor_absoluteX="106dp"
tools:layout_editor_absoluteY="137dp" />
<TextView
android:id="@+id/textView"
android:layout_width="348dp"
android:layout_height="316dp"
android:textColor="@android:color/background_dark"
android:textSize="36sp"
tools:layout_editor_absoluteX="5dp"
tools:layout_editor_absoluteY="193dp" />
Upvotes: 0