Skip to content

Commit 7469113

Browse files
UNT-T21169 - Day4 - Feature/Profile
Add Profile Screen (Activity and Xml)
1 parent e8e6e11 commit 7469113

File tree

6 files changed

+96
-0
lines changed

6 files changed

+96
-0
lines changed

app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
<activity
2323
android:name=".LoginActivity"
2424
android:exported="false" />
25+
<activity
26+
android:name=".ProfileActivity"
27+
android:exported="false" />
2528
<activity
2629
android:name=".MainActivity"
2730
android:exported="true">

app/src/main/java/simform/gitexcercise/android/LoginActivity.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package simform.gitexcercise.android
22

3+
import android.content.Intent
34
import android.os.Bundle
45
import android.widget.Toast
56
import androidx.appcompat.app.AppCompatActivity
@@ -23,6 +24,10 @@ class LoginActivity : AppCompatActivity() {
2324
getString(R.string.msg_login_successfully),
2425
Toast.LENGTH_SHORT
2526
).show()
27+
val intent = Intent(this@LoginActivity, ProfileActivity::class.java).apply {
28+
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK)
29+
}
30+
startActivity(intent)
2631
}
2732
}
2833
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package simform.gitexcercise.android
2+
3+
import android.os.Bundle
4+
import android.widget.Toast
5+
import androidx.appcompat.app.AppCompatActivity
6+
import simform.gitexcercise.android.databinding.ActivityProfileBinding
7+
8+
class ProfileActivity : AppCompatActivity() {
9+
10+
private lateinit var binding: ActivityProfileBinding
11+
12+
override fun onCreate(savedInstanceState: Bundle?) {
13+
super.onCreate(savedInstanceState)
14+
binding = ActivityProfileBinding.inflate(layoutInflater)
15+
setContentView(binding.root)
16+
setupOnClicks()
17+
setupData()
18+
}
19+
20+
private fun setupOnClicks() = with(binding) {
21+
btnEdit.setOnClickListener {
22+
Toast.makeText(
23+
this@ProfileActivity,
24+
getString(R.string.msg_upcoming_feature), Toast.LENGTH_SHORT
25+
).show()
26+
}
27+
}
28+
29+
private fun setupData() = with(binding) {
30+
tvName.text = getString(R.string.data_priyanshu_desai)
31+
tvEmail.text = getString(R.string.data_priyanshu_email)
32+
}
33+
}

app/src/main/java/simform/gitexcercise/android/RegistrationActivity.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package simform.gitexcercise.android
22

3+
import android.content.Intent
34
import android.os.Bundle
45
import android.widget.Toast
56
import androidx.appcompat.app.AppCompatActivity
@@ -23,6 +24,10 @@ class RegistrationActivity : AppCompatActivity() {
2324
getString(R.string.msg_registered_successfully),
2425
Toast.LENGTH_SHORT
2526
).show()
27+
val intent = Intent(this@RegistrationActivity, ProfileActivity::class.java).apply {
28+
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK)
29+
}
30+
startActivity(intent)
2631
}
2732
}
2833
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:app="http://schemas.android.com/apk/res-auto"
4+
xmlns:tools="http://schemas.android.com/tools"
5+
android:layout_width="match_parent"
6+
android:layout_height="match_parent"
7+
tools:context=".ProfileActivity">
8+
9+
<TextView
10+
android:id="@+id/tvName"
11+
android:layout_width="wrap_content"
12+
android:layout_height="wrap_content"
13+
android:layout_marginVertical="16dp"
14+
android:layout_marginHorizontal="16dp"
15+
android:textSize="16sp"
16+
app:layout_constraintBottom_toTopOf="@id/tvEmail"
17+
app:layout_constraintEnd_toEndOf="parent"
18+
app:layout_constraintStart_toStartOf="parent"
19+
app:layout_constraintTop_toTopOf="parent"
20+
app:layout_constraintVertical_chainStyle="packed"
21+
tools:text="Name" />
22+
23+
<TextView
24+
android:id="@+id/tvEmail"
25+
android:layout_width="wrap_content"
26+
android:layout_height="wrap_content"
27+
android:textSize="16sp"
28+
app:layout_constraintBottom_toTopOf="@id/btnEdit"
29+
app:layout_constraintEnd_toEndOf="@+id/tvName"
30+
app:layout_constraintStart_toStartOf="@+id/tvName"
31+
app:layout_constraintTop_toBottomOf="@+id/tvName"
32+
tools:text="Email Address" />
33+
34+
<Button
35+
android:id="@+id/btnEdit"
36+
android:layout_width="wrap_content"
37+
android:layout_height="wrap_content"
38+
android:layout_marginTop="16dp"
39+
android:text="@string/action_edit"
40+
app:layout_constraintBottom_toBottomOf="parent"
41+
app:layout_constraintEnd_toEndOf="@+id/tvName"
42+
app:layout_constraintStart_toStartOf="@+id/tvName"
43+
app:layout_constraintTop_toBottomOf="@+id/tvEmail" />
44+
45+
</androidx.constraintlayout.widget.ConstraintLayout>

app/src/main/res/values/strings.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,9 @@
1212
<string name="msg_registered_successfully">Registered Successfully</string>
1313
<string name="action_send_otp">Send OTP</string>
1414
<string name="msg_otp_sent">Otp sent on Registered Email Successfully</string>
15+
<string name="data_priyanshu_desai">Priyanshu Desai</string>
16+
<string name="data_priyanshu_email">[email protected]</string>
17+
<string name="msg_upcoming_feature">To be Implemented Soon!!</string>
18+
<string name="action_edit">Edit</string>
19+
<string name="data_priyashu_email">[email protected]</string>
1520
</resources>

0 commit comments

Comments
 (0)