StarterNameActivity code
This commit is contained in:
parent
2982096e47
commit
8b8aecb1c6
47
.idea/assetWizardSettings.xml
generated
Normal file
47
.idea/assetWizardSettings.xml
generated
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="WizardSettings">
|
||||||
|
<option name="children">
|
||||||
|
<map>
|
||||||
|
<entry key="vectorWizard">
|
||||||
|
<value>
|
||||||
|
<PersistentState>
|
||||||
|
<option name="children">
|
||||||
|
<map>
|
||||||
|
<entry key="vectorAssetStep">
|
||||||
|
<value>
|
||||||
|
<PersistentState>
|
||||||
|
<option name="children">
|
||||||
|
<map>
|
||||||
|
<entry key="clipartAsset">
|
||||||
|
<value>
|
||||||
|
<PersistentState>
|
||||||
|
<option name="values">
|
||||||
|
<map>
|
||||||
|
<entry key="url" value="jar:file:/C:/Program%20Files/Android/Android%20Studio/plugins/android/lib/android.jar!/images/material_design_icons/action/ic_swap_vert_black_24dp.xml" />
|
||||||
|
</map>
|
||||||
|
</option>
|
||||||
|
</PersistentState>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</map>
|
||||||
|
</option>
|
||||||
|
<option name="values">
|
||||||
|
<map>
|
||||||
|
<entry key="color" value="ffffff" />
|
||||||
|
<entry key="outputName" value="ic_swap_vert" />
|
||||||
|
<entry key="sourceFile" value="C:\Users\adima" />
|
||||||
|
</map>
|
||||||
|
</option>
|
||||||
|
</PersistentState>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</map>
|
||||||
|
</option>
|
||||||
|
</PersistentState>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</map>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
</project>
|
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
@ -13,6 +13,7 @@ android {
|
|||||||
versionCode 1
|
versionCode 1
|
||||||
versionName "1.0"
|
versionName "1.0"
|
||||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||||
|
vectorDrawables.useSupportLibrary true
|
||||||
}
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
|
@ -9,7 +9,9 @@
|
|||||||
android:roundIcon="@mipmap/ic_launcher_round"
|
android:roundIcon="@mipmap/ic_launcher_round"
|
||||||
android:supportsRtl="true"
|
android:supportsRtl="true"
|
||||||
android:theme="@style/AppTheme" >
|
android:theme="@style/AppTheme" >
|
||||||
<activity android:name=".StarterNameActivity" >
|
<activity
|
||||||
|
android:name=".StarterNameActivity"
|
||||||
|
android:windowSoftInputMode="adjustResize" >
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
|
|
||||||
|
@ -1,12 +1,76 @@
|
|||||||
package adrienmalin.pingpoints
|
package adrienmalin.pingpoints
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import android.content.SharedPreferences
|
||||||
import android.support.v7.app.AppCompatActivity
|
import android.support.v7.app.AppCompatActivity
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import android.view.View
|
||||||
|
import android.widget.*
|
||||||
|
|
||||||
|
|
||||||
class StarterNameActivity : AppCompatActivity() {
|
class StarterNameActivity : AppCompatActivity() {
|
||||||
|
var player1NameInput: AutoCompleteTextView = null
|
||||||
|
var player2NameInput: AutoCompleteTextView = null
|
||||||
|
var starterRadioGroup: RadioGroup = null
|
||||||
|
var previousMatch: SharedPreferences = null
|
||||||
|
var previousPlayers: Set<String> = emptySet()
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.activity_starter_name)
|
setContentView(R.layout.activity_starter_name)
|
||||||
|
|
||||||
|
previousMatch = getPreferences(Context.MODE_PRIVATE)
|
||||||
|
previousPlayers = previousMatch.getStringSet("previousPlayers", emptySet())
|
||||||
|
val previousPlayersAdapter = ArrayAdapter<String>(
|
||||||
|
this,
|
||||||
|
R.layout.activity_starter_name,
|
||||||
|
previousPlayers.toList())
|
||||||
|
|
||||||
|
player1NameInput = findViewById<AutoCompleteTextView>(R.id.player1Name)
|
||||||
|
player1NameInput?.run {
|
||||||
|
setText(
|
||||||
|
previousMatch.getString(
|
||||||
|
"previousPlayer2",
|
||||||
|
getString(R.string.player_1_default_name)),
|
||||||
|
TextView.BufferType.EDITABLE)
|
||||||
|
setAdapter(previousPlayersAdapter)
|
||||||
|
threshold = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
player2NameInput = findViewById<AutoCompleteTextView>(R.id.player2Name)
|
||||||
|
player2NameInput?.run{
|
||||||
|
setText(
|
||||||
|
previousMatch.getString(
|
||||||
|
"previousPlayer1",
|
||||||
|
getString(R.string.player_2_default_name)),
|
||||||
|
TextView.BufferType.EDITABLE)
|
||||||
|
setAdapter(previousPlayersAdapter)
|
||||||
|
threshold = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
starterRadioGroup = findViewById<RadioGroup>(R.id.starterRadioGroup)
|
||||||
|
starterRadioGroup?.check(previousMatch.getInt("previousStarterId", 0))
|
||||||
|
}
|
||||||
|
|
||||||
|
fun swapNames(view: View) {
|
||||||
|
player1NameInput?.text = player2NameInput?.text.also {
|
||||||
|
player2NameInput?.text = player1NameInput?.text
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fun startMatch(view: View) {
|
||||||
|
val player1Name = player1NameInput?.text.toString()
|
||||||
|
val player2Name = player2NameInput?.text.toString()
|
||||||
|
|
||||||
|
// Save
|
||||||
|
previousMatch.edit().run{
|
||||||
|
putString("previousPlayer1", player1Name)
|
||||||
|
putString("previousPlayer2", player2Name)
|
||||||
|
putInt("previousStarterId", starterRadioGroup?.checkedRadioButtonId)
|
||||||
|
putStringSet(
|
||||||
|
"previousPlayers",
|
||||||
|
previousPlayers.plus(player1Name).plus(player2Name))
|
||||||
|
commit()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
5
app/src/main/res/drawable/ic_swap_horiz.xml
Normal file
5
app/src/main/res/drawable/ic_swap_horiz.xml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#FFFFFF"
|
||||||
|
android:viewportHeight="24.0" android:viewportWidth="24.0"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M6.99,11L3,15l3.99,4v-3H14v-2H6.99v-3zM21,9l-3.99,-4v3H10v2h7.01v3L21,9z"/>
|
||||||
|
</vector>
|
5
app/src/main/res/drawable/ic_swap_vert.xml
Normal file
5
app/src/main/res/drawable/ic_swap_vert.xml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<vector android:height="24dp" android:tint="#FFFFFF"
|
||||||
|
android:viewportHeight="24.0" android:viewportWidth="24.0"
|
||||||
|
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<path android:fillColor="#FF000000" android:pathData="M16,17.01V10h-2v7.01h-3L15,21l4,-3.99h-3zM9,3L5,6.99h3V14h2V6.99h3L9,3z"/>
|
||||||
|
</vector>
|
@ -20,15 +20,16 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/button2"
|
android:id="@+id/button2"
|
||||||
android:drawableLeft="@drawable/ic_new_match" android:layout_marginBottom="8dp"
|
android:layout_marginBottom="8dp"
|
||||||
app:layout_constraintBottom_toBottomOf="parent" android:layout_marginEnd="8dp"
|
app:layout_constraintBottom_toBottomOf="parent" android:layout_marginEnd="8dp"
|
||||||
app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
||||||
style="@style/Widget.AppCompat.Button.Colored"/>
|
style="@style/Widget.AppCompat.Button.Colored" android:drawableStart="@drawable/ic_new_match"
|
||||||
|
android:onClick="startMatch"/>
|
||||||
<RadioGroup
|
<RadioGroup
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/WhoStarts" android:id="@+id/radioGroup"
|
app:layout_constraintTop_toBottomOf="@+id/WhoStarts" android:id="@+id/starterRadioGroup"
|
||||||
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
||||||
android:layout_marginLeft="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"
|
android:layout_marginLeft="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"
|
||||||
android:layout_marginRight="8dp" android:orientation="horizontal">
|
android:layout_marginRight="8dp" android:orientation="horizontal">
|
||||||
@ -43,6 +44,11 @@
|
|||||||
android:id="@+id/player1Name"
|
android:id="@+id/player1Name"
|
||||||
tools:layout_editor_absoluteX="143dp" android:hint="@string/player_name_hint"
|
tools:layout_editor_absoluteX="143dp" android:hint="@string/player_name_hint"
|
||||||
android:layout_weight="1"/>
|
android:layout_weight="1"/>
|
||||||
|
<ImageButton
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content" app:srcCompat="@drawable/ic_swap_horiz"
|
||||||
|
android:layout_weight="0" android:id="@+id/swapNamesButton"
|
||||||
|
android:contentDescription="@string/swap_names" android:onClick="swapNames"/>
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
||||||
@ -55,21 +61,21 @@
|
|||||||
android:hint="@string/player_name_hint" android:layout_height="wrap_content" android:layout_weight="1"/>
|
android:hint="@string/player_name_hint" android:layout_height="wrap_content" android:layout_weight="1"/>
|
||||||
</RadioGroup>
|
</RadioGroup>
|
||||||
<Switch
|
<Switch
|
||||||
android:text="Switch"
|
android:text="@string/TTS"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/enableTTS" tools:text="@string/TTS"
|
android:id="@+id/enableTTS"
|
||||||
android:layout_marginTop="8dp" app:layout_constraintTop_toBottomOf="@+id/radioGroup"
|
android:layout_marginTop="8dp" app:layout_constraintTop_toBottomOf="@+id/starterRadioGroup"
|
||||||
android:layout_marginEnd="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
android:layout_marginEnd="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
||||||
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
||||||
android:layout_marginLeft="8dp"/>
|
android:layout_marginLeft="8dp"/>
|
||||||
<Switch
|
<Switch
|
||||||
android:text="Switch"
|
android:text="@string/STT"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/enableSTT" android:layout_marginTop="8dp"
|
android:id="@+id/enableSTT" android:layout_marginTop="8dp"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/enableTTS" app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintTop_toBottomOf="@+id/enableTTS" app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:layout_marginEnd="8dp" android:layout_marginRight="8dp"
|
android:layout_marginEnd="8dp" android:layout_marginRight="8dp"
|
||||||
app:layout_constraintStart_toStartOf="parent" android:layout_marginLeft="8dp"
|
app:layout_constraintStart_toStartOf="parent" android:layout_marginLeft="8dp"
|
||||||
android:layout_marginStart="8dp" tools:text="@string/STT"/>
|
android:layout_marginStart="8dp"/>
|
||||||
</android.support.constraint.ConstraintLayout>
|
</android.support.constraint.ConstraintLayout>
|
@ -23,25 +23,27 @@
|
|||||||
app:layout_constraintTop_toBottomOf="@+id/WhoStarts"
|
app:layout_constraintTop_toBottomOf="@+id/WhoStarts"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
android:layout_marginLeft="8dp" android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
|
android:layout_marginLeft="8dp" android:layout_marginStart="8dp" app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:layout_marginEnd="8dp" android:layout_marginRight="8dp" android:id="@+id/linearLayout">
|
android:layout_marginEnd="8dp" android:layout_marginRight="8dp" android:id="@+id/linearLayout"
|
||||||
|
android:layout_margin="8dp">
|
||||||
<RadioGroup
|
<RadioGroup
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/WhoStarts" android:id="@+id/radioGroup"
|
app:layout_constraintTop_toBottomOf="@+id/WhoStarts" android:id="@+id/starterRadioGroup"
|
||||||
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent"
|
||||||
android:layout_marginLeft="8dp" app:layout_constraintEnd_toEndOf="parent"
|
android:layout_marginLeft="8dp" app:layout_constraintEnd_toEndOf="parent"
|
||||||
android:layout_marginEnd="8dp"
|
android:layout_marginEnd="8dp"
|
||||||
android:layout_marginRight="8dp">
|
android:layout_marginRight="8dp" android:layout_marginBottom="8dp">
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
||||||
tools:layout_editor_absoluteX="16dp" android:id="@+id/radioPlayer1Starts"
|
tools:layout_editor_absoluteX="16dp" android:id="@+id/radioPlayer1Starts"
|
||||||
android:layout_weight="1"/>
|
android:layout_weight="1" android:gravity="top"/>
|
||||||
<RadioButton
|
<RadioButton
|
||||||
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
android:layout_height="wrap_content" tools:layout_editor_absoluteY="93dp"
|
||||||
tools:layout_editor_absoluteX="16dp" android:id="@+id/radioPlayer2Starts"
|
tools:layout_editor_absoluteX="16dp" android:id="@+id/radioPlayer2Starts"
|
||||||
android:layout_width="wrap_content" android:layout_weight="1"/>
|
android:layout_width="wrap_content" android:layout_weight="1"
|
||||||
|
android:gravity="bottom"/>
|
||||||
</RadioGroup>
|
</RadioGroup>
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
@ -54,6 +56,11 @@
|
|||||||
android:id="@+id/player1Name"
|
android:id="@+id/player1Name"
|
||||||
tools:layout_editor_absoluteX="143dp" android:hint="@string/player_name_hint"
|
tools:layout_editor_absoluteX="143dp" android:hint="@string/player_name_hint"
|
||||||
android:selectAllOnFocus="true"/>
|
android:selectAllOnFocus="true"/>
|
||||||
|
<ImageButton
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content" app:srcCompat="@drawable/ic_swap_vert"
|
||||||
|
android:id="@+id/swapNamesButton" android:contentDescription="@string/swap_names"
|
||||||
|
android:onClick="swapNames"/>
|
||||||
<AutoCompleteTextView
|
<AutoCompleteTextView
|
||||||
android:text="@string/player_2_default_name"
|
android:text="@string/player_2_default_name"
|
||||||
tools:layout_editor_absoluteX="136dp" android:id="@+id/player2Name"
|
tools:layout_editor_absoluteX="136dp" android:id="@+id/player2Name"
|
||||||
@ -87,5 +94,5 @@
|
|||||||
style="@style/Widget.AppCompat.Button.Colored"
|
style="@style/Widget.AppCompat.Button.Colored"
|
||||||
android:layout_marginEnd="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
android:layout_marginEnd="8dp" app:layout_constraintEnd_toEndOf="parent" android:layout_marginRight="8dp"
|
||||||
android:layout_marginBottom="8dp" app:layout_constraintBottom_toBottomOf="parent"
|
android:layout_marginBottom="8dp" app:layout_constraintBottom_toBottomOf="parent"
|
||||||
android:drawableStart="@drawable/ic_new_match"/>
|
android:drawableStart="@drawable/ic_new_match" android:onClick="startMatch"/>
|
||||||
</android.support.constraint.ConstraintLayout>
|
</android.support.constraint.ConstraintLayout>
|
@ -8,4 +8,5 @@
|
|||||||
<string name="TTS">Synthèse vocale</string>
|
<string name="TTS">Synthèse vocale</string>
|
||||||
<string name="STT">Reconnaissance vocale</string>
|
<string name="STT">Reconnaissance vocale</string>
|
||||||
<string name="start">Allons-y !</string>
|
<string name="start">Allons-y !</string>
|
||||||
|
<string name="swap_names">Échanger les noms</string>
|
||||||
</resources>
|
</resources>
|
@ -7,4 +7,5 @@
|
|||||||
<string name="TTS">Text to speech</string>
|
<string name="TTS">Text to speech</string>
|
||||||
<string name="STT">Voice recognizer</string>
|
<string name="STT">Voice recognizer</string>
|
||||||
<string name="start">Let\'s go!</string>
|
<string name="start">Let\'s go!</string>
|
||||||
|
<string name="swap_names">Swap names</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user