LinearLayout
Proprietatea layout_weight ocupa spatiu suplimentar
LinearLayout
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:gravity="center|top"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView android:text="Hello World!"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Goodbye"
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="More Random Text"
android:layout_weight="1"/>
</LinearLayout>
MARGIN
BORDER
PADDING
CONTENT
CONTENT
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:gravity="center|top"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1st Button"
android:textSize="15sp"
android:padding="15dp"
android:layout_weight="1"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2nd Button"
android:textSize="15sp"
android:padding="15dp"
android:layout_weight="2"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="3rd Button"
android:textSize="15sp"
android:padding="15dp"/>
</LinearLayout>
Functionalitatea aplicatiei
EditText
Notificare: Toast
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:gravity="center|top"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/happy_question"
android:textSize="20sp"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/yes_button"
android:hint="Pick me"
android:onClick="onYesButtonClick"
android:id="@+id/yes_button"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_button"
android:hint="Don't pick me"
android:onClick="onNoButtonClick"
android:id="@+id/no_button"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<EditText
android:layout_width="200dp"
android:layout_height="50dp"
android:inputType="textPersonName"
android:hint="@string/users_name_editText"
android:id="@+id/user_name_editText"/>
</LinearLayout>
</LinearLayout>
LinearLayout
Are you happy?
Orientation: horizontal
LinearLayout
YES
NO
Orientation: vertical
LinearLayout
Orientation: horizontal
Your name
hint
[Link]
package [Link];
import
import
import
import
import
import
[Link];
[Link];
[Link];
[Link];
[Link];
[Link];
public class MainActivity extends AppCompatActivity {
//declarare controale
private Button YesButton;
private Button NoButton;
private EditText userName;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_main);
//initializare controale
YesButton = (Button)findViewById([Link].yes_button);
NoButton = (Button)findViewById([Link].no_button);
userName = (EditText)findViewById([Link].user_name_editText);
}
public void onYesButtonClick(View view) {
//notificare
//memoram numele introdus in controlul EditText intr-o variabila de
tip String
String Name = [Link]([Link]());
String yourYesResponse = "That's great "+Name;
[Link](this, yourYesResponse, Toast.LENGTH_SHORT).show();
}
public void onNoButtonClick(View view) {
String Name = [Link]([Link]());
String yourNoResponse = "To bad "+Name;
[Link](this, yourNoResponse, Toast.LENGTH_SHORT).show();
}
}
Are you happy?
Yes
Ne folosim de proprietatea onClick a
butonului pentru a-l face responsive
No
Luam numele din EditText si il memoram
Simi
String Name =
[Link]([Link]());
Memoram mesajul care vrem sa apara la apasarea
butonului si numele persoanei introdus in EditText
intr-o alta variabila de tip String
String yourYesResponse = "That's great "+Name;
[Link](this, yourNoResponse, Toast.LENGTH_SHORT).show();
Parametrii:
Ce activitate
String
Mesaj dorit
Cat timp vrem sa apara mesajul pe
ecran
Toast.LENGTH_SHORT
Toast.LENGTH_LONG