From da4a19e609166a8acfdc677d1fb06de81ea03ad4 Mon Sep 17 00:00:00 2001 From: Madalin Date: Sat, 24 Jul 2021 19:16:53 +0300 Subject: [PATCH] Solve code challenge no 3 from course 5. --- app/src/main/AndroidManifest.xml | 4 +- .../StartActivity.java | 6 ++ .../code_challenge_3/Activity1.java | 50 ++++++++++++++++ .../code_challenge_3/Activity2.java | 49 +++++++++++++++ app/src/main/res/layout/activity_1.xml | 58 ++++++++++++++++++ app/src/main/res/layout/activity_2.xml | 59 +++++++++++++++++++ app/src/main/res/layout/activity_start.xml | 7 ++- app/src/main/res/values/dimens.xml | 2 + app/src/main/res/values/strings.xml | 5 ++ app/src/main/res/values/themes.xml | 2 +- 10 files changed, 239 insertions(+), 3 deletions(-) create mode 100644 app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity1.java create mode 100644 app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity2.java create mode 100644 app/src/main/res/layout/activity_1.xml create mode 100644 app/src/main/res/layout/activity_2.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9312351..0cde225 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -11,7 +11,9 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.AndroidFundamentalsMai2021"> - + + + diff --git a/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/StartActivity.java b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/StartActivity.java index 3a1a9c0..4d07be6 100644 --- a/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/StartActivity.java +++ b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/StartActivity.java @@ -7,6 +7,7 @@ import android.view.View; import com.magdamiu.androidfundamentalsmai2021.activities.FirstActivity; +import com.magdamiu.androidfundamentalsmai2021.code_challenge_3.Activity1; public class StartActivity extends AppCompatActivity { @@ -48,4 +49,9 @@ public void startFirstActivityOnClick(View view) { Intent intentToStartFirstActivity = new Intent(StartActivity.this, FirstActivity.class); startActivity(intentToStartFirstActivity); } + + public void startActivity1OnClick(View view) { + Intent intentToStartActivity1 = new Intent(StartActivity.this, Activity1.class); + startActivity(intentToStartActivity1); + } } \ No newline at end of file diff --git a/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity1.java b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity1.java new file mode 100644 index 0000000..0ce3c37 --- /dev/null +++ b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity1.java @@ -0,0 +1,50 @@ +package com.magdamiu.androidfundamentalsmai2021.code_challenge_3; + +import androidx.appcompat.app.AppCompatActivity; + +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.EditText; +import android.widget.TextView; + +import com.magdamiu.androidfundamentalsmai2021.R; + +public class Activity1 extends AppCompatActivity { + + protected static final String MESSAGE = "Message"; + private TextView textViewReplyReceived, textViewReply; + private EditText editTextMessage; + private static final String REPLY_RECEIVED = "Reply received"; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_1); + textViewReplyReceived = findViewById(R.id.textViewReplyReceived); + textViewReply = findViewById(R.id.textViewMessageActivities); + editTextMessage = findViewById(R.id.editTextMessage); + + processBundle(); + } + + private void processBundle() { + Bundle bundle = getIntent().getExtras(); + if (bundle != null) { + String reply = bundle.getString(Activity1.MESSAGE); + textViewReplyReceived.setText(REPLY_RECEIVED); + textViewReply.setText(reply); + } + } + + public void sendMessageOnClick(View view) { + String message = editTextMessage.getText().toString(); + if (!message.isEmpty()) { + Intent intentToStartActivity2 = new Intent(Activity1.this, Activity2.class); + intentToStartActivity2.putExtra(MESSAGE, message); + startActivity(intentToStartActivity2); + } else { + editTextMessage.setError(getString(R.string.error_insert_message)); + } + } +} diff --git a/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity2.java b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity2.java new file mode 100644 index 0000000..fbf1af3 --- /dev/null +++ b/app/src/main/java/com/magdamiu/androidfundamentalsmai2021/code_challenge_3/Activity2.java @@ -0,0 +1,49 @@ +package com.magdamiu.androidfundamentalsmai2021.code_challenge_3; + +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.EditText; +import android.widget.TextView; + +import androidx.appcompat.app.AppCompatActivity; + +import com.magdamiu.androidfundamentalsmai2021.R; + +public class Activity2 extends AppCompatActivity { + + private static final String MESSAGE_RECEIVED = "Message received"; + private TextView textViewMessageReceived, textViewMessage; + private EditText editTextReply; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_2); + textViewMessageReceived = findViewById(R.id.textViewMessageReceived); + textViewMessage = findViewById(R.id.textViewMessage); + editTextReply = findViewById(R.id.editTextReply); + + processBundle(); + } + + private void processBundle() { + Bundle bundle = getIntent().getExtras(); + if (bundle != null) { + String messageReceived = bundle.getString(Activity1.MESSAGE); + textViewMessageReceived.setText(MESSAGE_RECEIVED); + textViewMessage.setText(messageReceived); + } + } + + public void sendReplyOnClick(View view) { + String reply = editTextReply.getText().toString(); + if (!reply.isEmpty()) { + Intent intentToStartActivity1 = new Intent(Activity2.this, Activity1.class); + intentToStartActivity1.putExtra(Activity1.MESSAGE, reply); + startActivity(intentToStartActivity1); + } else { + editTextReply.setError(getString(R.string.error_insert_reply)); + } + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_1.xml b/app/src/main/res/layout/activity_1.xml new file mode 100644 index 0000000..5e2d0f1 --- /dev/null +++ b/app/src/main/res/layout/activity_1.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + +