N: V LS R R .: 20BCI7030: Assignment - 3
N: V LS R R .: 20BCI7030: Assignment - 3
Assignment – 3
6.Create login screen with logo, user name, password and do validations with respect to the field.
When the user clicks on the Connect Button, a Toast indicates if the pair (login, password) is good
or not.
<activity_main.xml>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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"
android:layout_gravity="center_horizontal"
android:background="@drawable/bg"
tools:context=".MainActivity">
<EditText
android:id="@+id/username"
android:layout_width="350dp"
android:layout_height="60dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_centerHorizontal="true"
android:autofillHints=""
android:background="#30ffffff"
android:drawableLeft="@drawable/ic_baseline_person_outline_24"
android:drawablePadding="10dp"
android:hint="user name"
android:padding="20dp"
android:textColorHint="@color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/logo" />
<EditText
android:id="@+id/pass"
android:layout_width="350dp"
android:layout_height="60dp"
android:layout_below="@+id/username"
android:layout_alignParentStart="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="36dp"
android:background="#30ffffff"
android:drawableLeft="@drawable/ic_baseline_lock_24"
android:drawablePadding="10dp"
android:hint="password"
android:inputType="textPassword"
android:padding="20dp"
android:textColorHint="@color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/username" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_sign"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_below="@+id/pass"
android:layout_centerHorizontal="true"
android:layout_marginTop="56dp"
android:background="@drawable/login_button"
android:backgroundTint="@null"
android:onClick="show_toast"
android:text="CONNECT"
android:textColor="@color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/pass" />
<TextView
android:id="@+id/or_continue"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_marginTop="40dp"
android:gravity="center"
android:lineSpacingExtra="4sp"
android:text="@string/or_continue"
android:textAppearance="@style/or_continue"
android:textColor="@color/white"
android:translationY="-1.8sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btn_sign" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/a_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_marginStart="16dp"
android:layout_marginTop="40dp"
android:layout_toEndOf="@+id/g_btn"
android:background="@drawable/auth_bg"
android:drawableLeft="@drawable/apple_logo"
android:drawablePadding="10dp"
android:gravity="center_vertical"
android:padding="10dp"
android:text="Apple ID"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/g_btn"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/or_continue"
app:layout_constraintVertical_bias="0.0" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/g_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:layout_marginStart="56dp"
android:background="@drawable/auth_bg"
android:drawableLeft="@drawable/google_logo"
android:drawablePadding="10dp"
android:gravity="center_vertical"
android:padding="10dp"
android:text="Google"
android:textColor="@color/white"
app:layout_constraintBaseline_toBaselineOf="@+id/a_btn"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/a_btn" />
<ImageView
android:id="@+id/logo"
android:layout_width="393dp"
android:layout_height="236dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:src="@drawable/logo"
tools:layout_editor_absoluteY="4dp" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_begin="20dp" />
<androidx.constraintlayout.widget.Barrier
android:id="@+id/barrier2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:barrierDirection="top"
app:constraint_referenced_ids="a_btn,g_btn"
tools:layout_editor_absoluteY="689dp" />
</androidx.constraintlayout.widget.ConstraintLayout>
<login_button.xml>
<?xml version="1.0" encoding="utf-8"?>
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="298dp"
android:height="40dp"
android:viewportWidth="298"
android:viewportHeight="40"
>
<group>
<clip-path
android:pathData="M4 0H294C296.209 0 298 1.79086 298 4V36C298
38.2091 296.209 40 294 40H4C1.79086 40 0 38.2091 0 36V4C0 1.79086 1.79086 0
4 0Z"
/>
<path
android:pathData="M0 0V40H298V0"
android:fillColor="#000113"
/>
</group>
</vector>
<auth_bg.xml>
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="141dp"
android:height="40dp"
android:viewportWidth="141"
android:viewportHeight="40"
>
<group>
<clip-path
android:pathData="M4 0H137C139.209 0 141 1.79086 141 4V36C141
38.2091 139.209 40 137 40H4C1.79086 40 0 38.2091 0 36V4C0 1.79086 1.79086 0
4 0Z"
/>
<path
android:fillAlpha="0.2"
android:pathData="M0 0V40H141V0"
android:fillColor="#000000"
/>
</group>
</vector>
<MainActivity.java>
package com.example.a20bci7030_login;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
<activity_main.xml>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<MainActivity.java>
package com.example.firstapp;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.setTitle("My App");
}
}
<AndroidManifest.xml>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.firstapp">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/custom_icon"
android:label="@string/app_name"
android:roundIcon="@mipmap/custom_icon_round"
android:supportsRtl="true"
android:theme="@style/Theme.FirstApp"
tools:targetApi="31">
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
</application>
</manifest>
8. Create an app with screen color as green in design time & run time
<activity_main.xml>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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"
android:background="@color/teal_700"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
<MainActivity.java>
package com.example.firstapp;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.setTitle("My App");
}
}
<colors.xml>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="purple_200">#FFBB86FC</color>
<color name="purple_500">#FF6200EE</color>
<color name="purple_700">#FF3700B3</color>
<color name="teal_200">#FF03DAC5</color>
<color name="teal_700">#FF018786</color>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
</resources>
9. Create an app and display respective message when the following events occur for an
activity
11. Add a row with three Radio Button views with names as Red, Yellow, and Blue
respectively. Display respective text with color
<activity_main.xml>
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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=".MainActivity">
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
android:layout_margin="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<RadioButton
android:id="@+id/radio_red"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="Red"
android:textColor="@color/red" />
<RadioButton
android:id="@+id/radio_yellow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="Yellow"
android:textColor="@color/yellow" />
<RadioButton
android:id="@+id/radio_blue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="Blue"
android:textColor="@color/blue" />
</RadioGroup>
</androidx.constraintlayout.widget.ConstraintLayout>
<MainActivity.java>
package com.example.firstapp;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.setTitle("My App");
}
}
<colors.xml>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="purple_200">#FFBB86FC</color>
<color name="purple_500">#FF6200EE</color>
<color name="purple_700">#FF3700B3</color>
<color name="teal_200">#FF03DAC5</color>
<color name="teal_700">#FF018786</color>
<color name="red">#D61C4E</color>
<color name="yellow">#FAC213</color>
<color name="blue">#1363DF</color>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
</resources>