Przeglądaj źródła

New style for edit activity

pull/1/head
Nils Dittberner 7 lat temu
rodzic
commit
07dd30ff93
9 zmienionych plików z 121 dodań i 53 usunięć
  1. +1
    -0
      app/build.gradle
  2. +44
    -21
      app/src/main/java/de/mlte/soundboard/EditActivity.kt
  3. +1
    -0
      app/src/main/java/de/mlte/soundboard/MainActivity.kt
  4. +9
    -0
      app/src/main/res/drawable/ic_arrow_back_black_24dp.xml
  5. +9
    -0
      app/src/main/res/drawable/ic_delete_black_24dp.xml
  6. +9
    -0
      app/src/main/res/drawable/ic_done_black_24dp.xml
  7. +29
    -32
      app/src/main/res/layout/activity_edit.xml
  8. +16
    -0
      app/src/main/res/menu/edit.xml
  9. +3
    -0
      app/src/main/res/values/strings.xml

+ 1
- 0
app/build.gradle Wyświetl plik

@@ -27,6 +27,7 @@ dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:design:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1', {
exclude group: 'com.android.support', module: 'support-annotations'


+ 44
- 21
app/src/main/java/de/mlte/soundboard/EditActivity.kt Wyświetl plik

@@ -8,6 +8,13 @@ import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.provider.OpenableColumns
import android.support.v4.content.ContextCompat
import android.support.v4.content.res.ResourcesCompat
import android.support.v7.widget.Toolbar
import android.util.Log
import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.widget.TextView
import kotlinx.android.synthetic.main.activity_edit.*

@@ -27,23 +34,16 @@ class EditActivity : AppCompatActivity() {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_edit)

val editToolbar = findViewById<View>(R.id.edit_toolbar) as Toolbar
setSupportActionBar(editToolbar)
editToolbar.navigationIcon = ResourcesCompat.getDrawable(resources, R.drawable.ic_arrow_back_black_24dp, null)
editToolbar.setNavigationOnClickListener(View.OnClickListener { onBackPressed() })

val captionEditText = findViewById<EditText>(R.id.captionEditText)
captionEditText.setText(intent.getStringExtra("caption"))

fileTextView.text = intent.getStringExtra("fileName")

val okButton = findViewById<Button>(R.id.okButton)
okButton.setOnClickListener {
val data = Intent()
data.putExtra("index", intent.getIntExtra("index", -1))
data.putExtra("caption", captionEditText.text.toString())
data.putExtra("fileName", fileTextView.text.toString())
if (currentUri != null) {
data.putExtra("uri", currentUri)
}
setResult(Activity.RESULT_OK, data)
finish()
}
val fileName = intent.getStringExtra("fileName")
if (fileName.isEmpty()) fileTextView.text = "No file selected" else fileTextView.text = fileName

val selectButton = findViewById<Button>(R.id.selectButton)
selectButton.setOnClickListener {
@@ -53,15 +53,38 @@ class EditActivity : AppCompatActivity() {

startActivityForResult(intent, 123)
}
}

val deleteButton = findViewById<Button>(R.id.deleteButton)
deleteButton.setOnClickListener {
val data = Intent()
data.putExtra("index", intent.getIntExtra("index", -1))
data.putExtra("delete", true)
setResult(Activity.RESULT_OK, data)
finish()
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
val inflater = menuInflater
inflater.inflate(R.menu.edit, menu)
return true
}

override fun onOptionsItemSelected(item: MenuItem?): Boolean {
if (item != null) {
when (item.itemId) {
R.id.submit -> {
val data = Intent()
data.putExtra("index", intent.getIntExtra("index", -1))
data.putExtra("caption", captionEditText.text.toString())
data.putExtra("fileName", fileTextView.text.toString())
if (currentUri != null) {
data.putExtra("uri", currentUri)
}
setResult(Activity.RESULT_OK, data)
finish()
}
R.id.delete -> {
val data = Intent()
data.putExtra("index", intent.getIntExtra("index", -1))
data.putExtra("delete", true)
setResult(Activity.RESULT_OK, data)
finish()
}
}
}
return super.onOptionsItemSelected(item)
}

private var currentUri: Uri? = null


+ 1
- 0
app/src/main/java/de/mlte/soundboard/MainActivity.kt Wyświetl plik

@@ -238,6 +238,7 @@ class MainActivity : AppCompatActivity() {
parent.removeView(button)
saveNumButtons()
organizeButtons()
// TODO: Do we need to remove some preferences?
} else {
val caption = data.getStringExtra("caption")
if (caption != null) {


+ 9
- 0
app/src/main/res/drawable/ic_arrow_back_black_24dp.xml Wyświetl plik

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z"/>
</vector>

+ 9
- 0
app/src/main/res/drawable/ic_delete_black_24dp.xml Wyświetl plik

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
</vector>

+ 9
- 0
app/src/main/res/drawable/ic_done_black_24dp.xml Wyświetl plik

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M9,16.2L4.8,12l-1.4,1.4L9,19 21,7l-1.4,-1.4L9,16.2z"/>
</vector>

+ 29
- 32
app/src/main/res/layout/activity_edit.xml Wyświetl plik

@@ -4,24 +4,41 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="16dp"
tools:context="de.mlte.soundboard.EditActivity">

<EditText
android:id="@+id/captionEditText"
<android.support.v7.widget.Toolbar
android:id="@+id/edit_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />

<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPersonName"
android:hint="Name" />
android:layout_below="@+id/edit_toolbar"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginTop="16dp">

<android.support.design.widget.TextInputEditText
android:id="@+id/captionEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Name"
android:inputType="textPersonName" />
</android.support.design.widget.TextInputLayout>

<Button
android:id="@+id/selectButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/captionEditText"
android:layout_below="@+id/input_layout"
android:layout_marginRight="16dp"
android:text="Select File ..." />

<TextView
@@ -30,29 +47,9 @@
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/selectButton"
android:layout_alignParentLeft="true"
android:layout_below="@+id/captionEditText"
android:layout_toLeftOf="@id/selectButton" />

<Button
android:id="@+id/okButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_below="@+id/selectButton"
android:layout_marginTop="48dp"
android:text="OK" />

<Button
android:id="@+id/deleteButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/okButton"
android:layout_alignParentStart="false"
android:layout_marginRight="8dp"
android:layout_toLeftOf="@+id/okButton"
android:backgroundTint="@android:color/holo_red_dark"
android:text="Delete"
android:textColor="@android:color/white" />
android:layout_below="@+id/input_layout"
android:layout_marginLeft="16dp"
android:layout_toLeftOf="@id/selectButton"
android:text="@string/no_file_selected"/>

</RelativeLayout>

+ 16
- 0
app/src/main/res/menu/edit.xml Wyświetl plik

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/submit"
android:icon="@drawable/ic_done_black_24dp"
android:title="@string/action_done"
app:showAsAction="ifRoom|withText"/>

<item
android:id="@+id/delete"
android:icon="@drawable/ic_delete_black_24dp"
android:title="@string/action_delete"
app:showAsAction="never|withText" />

</menu>

+ 3
- 0
app/src/main/res/values/strings.xml Wyświetl plik

@@ -1,4 +1,7 @@
<resources>
<string name="app_name">Soundboard</string>
<string name="action_add_new">Add new</string>
<string name="action_done">Done</string>
<string name="action_delete">Delete</string>
<string name="no_file_selected">No file selected</string>
</resources>

Ładowanie…
Anuluj
Zapisz