From 001975aab1bbde6c3a5fda720336c13e135cec60 Mon Sep 17 00:00:00 2001 From: icewithcola Date: Sat, 1 Jun 2024 10:55:56 +0800 Subject: [PATCH] 1.5.7 New UI --- app/build.gradle.kts | 5 +- .../java/chatgpt/AnimalDatabaseHelper.java | 93 +++++ .../uk/kagurach/android101/MainActivity.java | 2 +- .../uk/kagurach/android101/MainActivity2.java | 104 ++++- .../java/uk/kagurach/android101/Page4.java | 2 +- .../android101/Page4OtherActivity.java | 2 +- .../java/uk/kagurach/android101/Page5.java | 76 +++- .../uk/kagurach/android101/PageHelper.java | 15 +- .../{ => android101}/misc/AIAnswerService.kt | 2 +- .../AbstractAutoCompleteHelper.java | 24 +- .../AnimalTypeAutoCompleteHelper.java | 3 +- app/src/main/res/drawable/close_24.xml | 9 + .../main/res/drawable/p2_settings_layout.xml | 9 + .../main/res/drawable/p5_flyout_layout.xml | 9 + app/src/main/res/layout/activity_main.xml | 9 +- app/src/main/res/layout/activity_main2.xml | 356 ++++++++++++------ app/src/main/res/layout/activity_page3.xml | 8 +- app/src/main/res/layout/activity_page4.xml | 22 +- app/src/main/res/layout/activity_page5.xml | 49 ++- app/src/main/res/values-night/themes.xml | 2 +- app/src/main/res/values-zh-rCN/strings.xml | 11 +- app/src/main/res/values/strings.xml | 11 +- app/src/main/res/values/themes.xml | 4 +- gradle/libs.versions.toml | 2 - 24 files changed, 656 insertions(+), 173 deletions(-) create mode 100644 app/src/main/java/chatgpt/AnimalDatabaseHelper.java rename app/src/main/java/uk/kagurach/{ => android101}/misc/AIAnswerService.kt (97%) create mode 100644 app/src/main/res/drawable/close_24.xml create mode 100644 app/src/main/res/drawable/p2_settings_layout.xml create mode 100644 app/src/main/res/drawable/p5_flyout_layout.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b59ee59..0b9cce0 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -11,8 +11,8 @@ android { applicationId = "uk.kagurach.android101" minSdk = 31 targetSdk = 34 - versionCode = 155 - versionName = "1.5.4" + versionCode = 157 + versionName = "1.5.7" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } @@ -68,7 +68,6 @@ dependencies { implementation(libs.androidx.annotation) implementation(libs.androidx.lifecycle.livedata.ktx) implementation(libs.androidx.lifecycle.viewmodel.ktx) - implementation(libs.androidx.datastore.rxjava3) testImplementation(libs.junit) diff --git a/app/src/main/java/chatgpt/AnimalDatabaseHelper.java b/app/src/main/java/chatgpt/AnimalDatabaseHelper.java new file mode 100644 index 0000000..87d5e9e --- /dev/null +++ b/app/src/main/java/chatgpt/AnimalDatabaseHelper.java @@ -0,0 +1,93 @@ +package chatgpt; + +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteOpenHelper; + +public class AnimalDatabaseHelper extends SQLiteOpenHelper { + + private static final String DATABASE_NAME = "AnimalDatabase.db"; + private static final int DATABASE_VERSION = 1; + private static final String TABLE_NAME = "AnimalData"; + + // Columns + private static final String COLUMN_ID = "_id"; + private static final String COLUMN_NAME = "name"; + private static final String COLUMN_TYPE = "type"; + + public AnimalDatabaseHelper(Context context) { + super(context, DATABASE_NAME, null, DATABASE_VERSION); + } + + @Override + public void onCreate(SQLiteDatabase db) { + String createTable = "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " (" + + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, " + + COLUMN_NAME + " VARCHAR NOT NULL, " + + COLUMN_TYPE + " VARCHAR NOT NULL);"; + db.execSQL(createTable); + } + + @Override + public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { + // Handle database upgrade as needed + db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); + onCreate(db); + } + + // Method to check if the name already exists + public boolean isNameExists(String name) { + SQLiteDatabase db = this.getReadableDatabase(); + String query = "SELECT * FROM " + TABLE_NAME + " WHERE " + COLUMN_NAME + " = ?"; + Cursor cursor = db.rawQuery(query, new String[]{name}); + + boolean exists = cursor.getCount() > 0; + cursor.close(); + return exists; + } + + // Method to insert new animal data if the name does not exist + public boolean insertAnimalData(String name, String type) { + if (!isNameExists(name)) { + SQLiteDatabase db = this.getWritableDatabase(); + ContentValues values = new ContentValues(); + values.put(COLUMN_NAME, name); + values.put(COLUMN_TYPE, type); + long result = db.insert(TABLE_NAME, null, values); + return result != -1; // Return true if insert is successful + } else { + return false; // Name already exists + } + } + // Method to clear the table + public void clearTable() { + SQLiteDatabase db = this.getWritableDatabase(); + db.execSQL("DELETE FROM " + TABLE_NAME); + db.execSQL("VACUUM"); // Optional: Reclaims database space after delete + } + + + // Method to get all data as a formatted string + public String getAllDataAsString() { + SQLiteDatabase db = this.getReadableDatabase(); + StringBuilder result = new StringBuilder(); + + String query = "SELECT " + COLUMN_NAME + ", " + COLUMN_TYPE + " FROM " + TABLE_NAME; + Cursor cursor = db.rawQuery(query, null); + int id = 1; + if (cursor.moveToFirst()) { + do { + String name = cursor.getString(cursor.getColumnIndexOrThrow(COLUMN_NAME)); + String type = cursor.getString(cursor.getColumnIndexOrThrow(COLUMN_TYPE)); + result.append(id++).append(": name:'").append(name).append("'@'").append(type).append("'\n"); + } while (cursor.moveToNext()); + } + + cursor.close(); + return result.toString(); + } + + +} diff --git a/app/src/main/java/uk/kagurach/android101/MainActivity.java b/app/src/main/java/uk/kagurach/android101/MainActivity.java index 3801f3f..691c7d7 100644 --- a/app/src/main/java/uk/kagurach/android101/MainActivity.java +++ b/app/src/main/java/uk/kagurach/android101/MainActivity.java @@ -107,7 +107,7 @@ public class MainActivity extends AppCompatActivity { } private final class LongClickHandler implements View.OnLongClickListener { - Context context; + final Context context; LongClickHandler(Context ctx) { context = ctx; diff --git a/app/src/main/java/uk/kagurach/android101/MainActivity2.java b/app/src/main/java/uk/kagurach/android101/MainActivity2.java index 60d0231..8c5e358 100644 --- a/app/src/main/java/uk/kagurach/android101/MainActivity2.java +++ b/app/src/main/java/uk/kagurach/android101/MainActivity2.java @@ -10,6 +10,9 @@ import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; +import android.widget.FrameLayout; +import android.widget.ImageButton; +import android.widget.ImageView; import android.widget.TextView; import androidx.activity.EdgeToEdge; @@ -23,6 +26,8 @@ public class MainActivity2 extends AppCompatActivity { PageHelper pageHelper; int _text_size = 70; + int _text_color = Color.rgb(0,0,0); + String _text_unit = "sp"; @Override protected void onCreate(Bundle savedInstanceState) { @@ -40,32 +45,49 @@ public class MainActivity2 extends AppCompatActivity { @Override protected void onResume() { super.onResume(); + Button button = findViewById(R.id.next_page_nav_2); button.setOnClickListener(pageHelper.pageButtonHandler); button.setOnLongClickListener(pageHelper.longClickHandler); + + Button SettingButton = findViewById(R.id.P2OpenSettingsButton); + SettingButton.setOnClickListener(new SettingButtonHandler()); + + ImageButton CloseSettingButton = findViewById(R.id.P2SettingsCloseButton); + CloseSettingButton.setOnClickListener(new CloseSettingButtonHandler()); + + Button TestColorButton = findViewById(R.id.P2TestColorButton); + TestColorButton.setOnClickListener(new TestColorButtonHandler()); + } - public void set70sp(View view) { + public void setUnit_sp(View view) { TextView t = findViewById(R.id.test2strview); t.setTextSize(TypedValue.COMPLEX_UNIT_SP, _text_size); + _text_unit = "sp"; + updateCurrentSettingShower(); } - public void set70dp(View view) { + public void setUnit_dp(View view) { TextView t = findViewById(R.id.test2strview); t.setTextSize(TypedValue.COMPLEX_UNIT_DIP, _text_size); + _text_unit = "dp"; + updateCurrentSettingShower(); } - public void set70px(View view) { + public void setUnit_px(View view) { TextView t = findViewById(R.id.test2strview); t.setTextSize(TypedValue.COMPLEX_UNIT_PX, _text_size); + _text_unit = "px"; + updateCurrentSettingShower(); } public void setColor(View view) { TextView t = findViewById(R.id.test2strview); - EditText r_edit = findViewById(R.id.EditText_R); - EditText g_edit = findViewById(R.id.G); - EditText b_edit = findViewById(R.id.B); + EditText r_edit = findViewById(R.id.P2SetColorR); + EditText g_edit = findViewById(R.id.P2SetColorG); + EditText b_edit = findViewById(R.id.P2SetColorB); int _r, _g, _b; // Here we are testing toast @@ -87,12 +109,14 @@ public class MainActivity2 extends AppCompatActivity { return; } if (_r >= 0 && _g >= 0 && _b >= 0 && _r <= 255 && _g <= 255 && _b <= 255) { - t.setTextColor(Color.rgb(_r, _g, _b)); + _text_color = Color.rgb(_r, _g, _b); + t.setTextColor(_text_color); } else { ToastHelper.SmartToast.ShowToast( "The color: R=" + _r + " G=" + _g + " B=" + _b + " is invalid!", this); } + updateCurrentSettingShower(); } public void setText(View view) { @@ -126,9 +150,75 @@ public class MainActivity2 extends AppCompatActivity { sp.setText(size + "SP"); dp.setText(size + "DP"); px.setText(size + "PX"); + updateCurrentSettingShower(); } + private void updateCurrentSettingShower(){ + TextView tv = findViewById(R.id.P2SettingResult); + String sb = "Color = #" + Integer.toString(_text_color&0xffffff, 16) + + "; TextSize = " + + _text_size + + "." + + _text_unit; + tv.setText(sb); + } + + class SettingButtonHandler implements View.OnClickListener{ + @Override + public void onClick(View v) { + FrameLayout fl = findViewById(R.id.P2SettingPage); + fl.setVisibility(View.VISIBLE); + } + } + + class CloseSettingButtonHandler implements View.OnClickListener{ + @Override + public void onClick(View v) { + FrameLayout fl = findViewById(R.id.P2SettingPage); + fl.setVisibility(View.GONE); + } + } + + class TestColorButtonHandler implements View.OnClickListener{ + @Override + public void onClick(View v) { + ImageView imageView = findViewById(R.id.P2ColorShower); + int _test_color = 0; + + EditText r_edit = findViewById(R.id.P2SetColorR); + EditText g_edit = findViewById(R.id.P2SetColorG); + EditText b_edit = findViewById(R.id.P2SetColorB); + + int _r, _g, _b; + // Here we are testing toast + if (r_edit.getText().toString().isEmpty() || + g_edit.getText().toString().isEmpty() || + b_edit.getText().toString().isEmpty()) { + ToastHelper.SmartToast.ShowToast(""" + Please input R,G,B within 0-255 + 请在大小选择下方输入0-255的RGB""", + v.getContext()); + } + + try { + _r = Integer.parseInt(r_edit.getText().toString()); + _g = Integer.parseInt(g_edit.getText().toString()); + _b = Integer.parseInt(b_edit.getText().toString()); + } catch (NumberFormatException e) { + ToastHelper.SmartToast.ShowToast(e.toString(), v.getContext()); + return; + } + if (_r >= 0 && _g >= 0 && _b >= 0 && _r <= 255 && _g <= 255 && _b <= 255) { + _test_color = Color.rgb(_r, _g, _b); + imageView.setBackgroundColor(_test_color); + } else { + ToastHelper.SmartToast.ShowToast( + "The color: R=" + _r + " G=" + _g + " B=" + _b + " is invalid!", v.getContext()); + } + } + } + // Fix: hide keyboard @Override public boolean dispatchTouchEvent(MotionEvent ev) { diff --git a/app/src/main/java/uk/kagurach/android101/Page4.java b/app/src/main/java/uk/kagurach/android101/Page4.java index 2f49b8b..5885318 100644 --- a/app/src/main/java/uk/kagurach/android101/Page4.java +++ b/app/src/main/java/uk/kagurach/android101/Page4.java @@ -24,7 +24,7 @@ import uk.kagurach.android101.vibrationBroadcastReceiver.vibrationBroadcastRecei public class Page4 extends AppCompatActivity { PageHelper pageHelper; - ActivityResultLauncher mLauncher; + ActivityResultLauncher mLauncher; long startTime = 0; long endTime = 0; diff --git a/app/src/main/java/uk/kagurach/android101/Page4OtherActivity.java b/app/src/main/java/uk/kagurach/android101/Page4OtherActivity.java index 4ae1e59..302665b 100644 --- a/app/src/main/java/uk/kagurach/android101/Page4OtherActivity.java +++ b/app/src/main/java/uk/kagurach/android101/Page4OtherActivity.java @@ -1,6 +1,6 @@ package uk.kagurach.android101; -import static uk.kagurach.misc.AIAnswerServiceKt.AIAnswerService; +import static uk.kagurach.android101.misc.AIAnswerServiceKt.AIAnswerService; import android.content.Intent; import android.os.Bundle; diff --git a/app/src/main/java/uk/kagurach/android101/Page5.java b/app/src/main/java/uk/kagurach/android101/Page5.java index d1bbcbb..c377e24 100644 --- a/app/src/main/java/uk/kagurach/android101/Page5.java +++ b/app/src/main/java/uk/kagurach/android101/Page5.java @@ -2,13 +2,13 @@ package uk.kagurach.android101; import android.content.Context; import android.os.Bundle; -import android.preference.Preference; import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.AutoCompleteTextView; import android.widget.Button; +import android.widget.FrameLayout; import android.widget.TextView; import androidx.activity.EdgeToEdge; @@ -16,17 +16,18 @@ import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; -import androidx.datastore.rxjava3.RxDataStore; import java.io.IOException; import java.util.Objects; +import chatgpt.AnimalDatabaseHelper; import uk.kagurach.android101.misc.AutoCompleHelper.AnimalTypeAutoCompleteHelper; public class Page5 extends AppCompatActivity { AnimalTypeAutoCompleteHelper completeHelper = null; - RxDataStore mDataStore = null; + final AnimalDatabaseHelper dbHelper = new AnimalDatabaseHelper(this); + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -38,7 +39,6 @@ public class Page5 extends AppCompatActivity { return insets; }); - // Set auto-suggestions for animals AutoCompleteTextView autoCompleteTextView = findViewById(R.id.AnimalTypeAutoCompleteInput); try { @@ -54,12 +54,19 @@ public class Page5 extends AppCompatActivity { // Set Button Handler Button P5AddAnimalButton = findViewById(R.id.P5AddAnimalButton); - P5AddAnimalButton.setOnClickListener(new AddAminalButtonHander()); + P5AddAnimalButton.setOnClickListener(new AddAnimalButtonHandler()); + + Button P5CleanDataButton = findViewById(R.id.P5CleanDataButton); + P5CleanDataButton.setOnLongClickListener(new CleanButtonHandler()); + + Button P5CloseQueryButton = findViewById(R.id.P5CloseQueryButton); + P5CloseQueryButton.setOnClickListener(new P5CloseQueryButtonHandler()); + + Button P5QueryButton = findViewById(R.id.P5QueryButton); + P5QueryButton.setOnClickListener(new QueryButtonHandler()); } - - - class AddAminalButtonHander implements View.OnClickListener { + class AddAnimalButtonHandler implements View.OnClickListener { @Override public void onClick(View v) { TextView name = findViewById(R.id.P5AnimalNameInput); @@ -69,6 +76,14 @@ public class Page5 extends AppCompatActivity { ToastHelper.SmartToast.ShowToast("Please input all fields",v.getContext()); } + // Add to database + if (dbHelper.insertAnimalData(name.getText().toString(), type.getText().toString().replace(" ","_"))) { + // Insert was successful + ToastHelper.SmartToast.ShowToast( "Animal added successfully!",v.getContext()); + } else { + // Name already exists + ToastHelper.SmartToast.ShowToast( "Animal with this name already exists!",v.getContext()); + } try { completeHelper.AddEntry(type.getText().toString()); } catch (IOException e) { @@ -87,6 +102,51 @@ public class Page5 extends AppCompatActivity { } } + class CleanButtonHandler implements View.OnLongClickListener { + @Override + public boolean onLongClick(View v) { + AutoCompleteTextView _a = findViewById(R.id.AnimalTypeAutoCompleteInput); + try { + completeHelper.Clean(); + } catch (IOException e) { + throw new RuntimeException(e); + } + _a.setAdapter( + completeHelper.GetArrayAdapter( + v.getContext(),android.R.layout.simple_list_item_1 + )); + ToastHelper.SmartToast.ShowToast("Cleaned Data",v.getContext()); + + // Clean DataBase + dbHelper.clearTable(); + ToastHelper.SmartToast.ShowToast("Cleaned Database",v.getContext()); + return true; + } + } + + class P5CloseQueryButtonHandler implements View.OnClickListener{ + + @Override + public void onClick(View v) { + FrameLayout fl = findViewById(R.id.P5Flyout); + fl.setVisibility(View.GONE); + } + } + + class QueryButtonHandler implements View.OnClickListener{ + @Override + public void onClick(View v) { + String res = dbHelper.getAllDataAsString(); + if (res.isEmpty()){ + res = "No animals qwq"; + } + TextView tv = findViewById(R.id.P5QueryResult); + tv.setText(res); + FrameLayout fl = findViewById(R.id.P5Flyout); + fl.setVisibility(View.VISIBLE); + } + } + @Override public boolean dispatchTouchEvent(MotionEvent ev) { diff --git a/app/src/main/java/uk/kagurach/android101/PageHelper.java b/app/src/main/java/uk/kagurach/android101/PageHelper.java index e365a7a..90e23af 100644 --- a/app/src/main/java/uk/kagurach/android101/PageHelper.java +++ b/app/src/main/java/uk/kagurach/android101/PageHelper.java @@ -29,19 +29,32 @@ public class PageHelper { _activity = activity; } - void goPrev() { + void goPrev(){// Keep no parameter signature + goPrev(true); + } + + void goPrev(boolean keepOneInstance) { if (_prev == null) { return; } Intent myIntent = new Intent(_curr, _prev); + if (keepOneInstance) { + myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); // 仅保留一个实例 + } startActivity(_curr, myIntent, null); } void goNext() { + goNext(true); + } + void goNext(boolean keepOneInstance) { if (_next == null) { return; } Intent myIntent = new Intent(_curr, _next); + if (keepOneInstance) { + myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + } startActivity(_curr, myIntent, null); } diff --git a/app/src/main/java/uk/kagurach/misc/AIAnswerService.kt b/app/src/main/java/uk/kagurach/android101/misc/AIAnswerService.kt similarity index 97% rename from app/src/main/java/uk/kagurach/misc/AIAnswerService.kt rename to app/src/main/java/uk/kagurach/android101/misc/AIAnswerService.kt index df754ff..c73d8a1 100644 --- a/app/src/main/java/uk/kagurach/misc/AIAnswerService.kt +++ b/app/src/main/java/uk/kagurach/android101/misc/AIAnswerService.kt @@ -1,4 +1,4 @@ -package uk.kagurach.misc +package uk.kagurach.android101.misc import java.time.Instant import java.util.Date diff --git a/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AbstractAutoCompleteHelper.java b/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AbstractAutoCompleteHelper.java index cb8a67b..598a96c 100644 --- a/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AbstractAutoCompleteHelper.java +++ b/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AbstractAutoCompleteHelper.java @@ -38,14 +38,13 @@ public abstract class AbstractAutoCompleteHelper { if (data == null) { data = new ArrayList<>(); }else { + while (scanner.hasNextLine()){ + data.add(scanner.nextLine()); + } // 去重 Set set = new LinkedHashSet<>(data); data = new ArrayList<>(set); } - while (scanner.hasNextLine()){ - data.add(scanner.nextLine()); - } - } public void Sync() throws IOException { if (dataFile==null){ @@ -74,4 +73,21 @@ public abstract class AbstractAutoCompleteHelper { public abstract ArrayAdapter GetArrayAdapter( Context ctx, @LayoutRes int resource); + + public void Clean() throws IOException { + if (dataFile!=null){ + File _data = new File(dataFile); + if (!_data.isFile()){ + _data.createNewFile(); + } + if (!_data.canRead() || !_data.canWrite()){ + throw new RuntimeException("File permission denied"); + } + try (FileWriter fileWriter = new FileWriter(_data,false)) { + fileWriter.write(""); + }catch (IOException e){ + throw new IOException(e); + } + } + } } diff --git a/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AnimalTypeAutoCompleteHelper.java b/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AnimalTypeAutoCompleteHelper.java index 01f747d..3be1d23 100644 --- a/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AnimalTypeAutoCompleteHelper.java +++ b/app/src/main/java/uk/kagurach/android101/misc/AutoCompleHelper/AnimalTypeAutoCompleteHelper.java @@ -3,12 +3,10 @@ package uk.kagurach.android101.misc.AutoCompleHelper; import android.content.Context; import android.widget.ArrayAdapter; -import androidx.annotation.DrawableRes; import androidx.annotation.LayoutRes; import java.io.File; import java.io.IOException; -import java.util.ArrayList; public class AnimalTypeAutoCompleteHelper extends AbstractAutoCompleteHelper { public AnimalTypeAutoCompleteHelper(Context ctx) throws IOException { @@ -22,6 +20,7 @@ public class AnimalTypeAutoCompleteHelper extends AbstractAutoCompleteHelper { if (!loaded){ throw new RuntimeException("Haven't loaded"); } + name = name.replace(" ","_"); if (data.contains(name)){ return; } diff --git a/app/src/main/res/drawable/close_24.xml b/app/src/main/res/drawable/close_24.xml new file mode 100644 index 0000000..a8dcefd --- /dev/null +++ b/app/src/main/res/drawable/close_24.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/p2_settings_layout.xml b/app/src/main/res/drawable/p2_settings_layout.xml new file mode 100644 index 0000000..8a193de --- /dev/null +++ b/app/src/main/res/drawable/p2_settings_layout.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/p5_flyout_layout.xml b/app/src/main/res/drawable/p5_flyout_layout.xml new file mode 100644 index 0000000..8454b59 --- /dev/null +++ b/app/src/main/res/drawable/p5_flyout_layout.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 43522d8..f925424 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,6 +1,5 @@ - - + android:backgroundTint="#4DB6AC" /> diff --git a/app/src/main/res/layout/activity_main2.xml b/app/src/main/res/layout/activity_main2.xml index 4c1b748..5e93191 100644 --- a/app/src/main/res/layout/activity_main2.xml +++ b/app/src/main/res/layout/activity_main2.xml @@ -5,6 +5,7 @@ android:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" + android:windowSoftInputMode="adjustResize" tools:context=".MainActivity2"> @@ -12,158 +13,299 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> - - - + android:layout_height="300dp"> + android:textColor="#000000" + android:textSize="70sp"/> - + android:layout_height="wrap_content" + android:layout_marginHorizontal="10dp" + android:textSize="20sp" + android:text="@string/p2_default_setting"/> - - -