소스 검색

Added about page

sirekanyan 8 년 전
부모
커밋
146b0f0485

+ 1 - 1
app/build.gradle

@@ -9,7 +9,7 @@ android {
         minSdkVersion 19
         targetSdkVersion 26
         versionCode 1
-        versionName "1.0"
+        versionName "0.1.0"
         vectorDrawables.useSupportLibrary = true
     }
 }

+ 14 - 1
app/src/main/java/me/vadik/knigopis/MainActivity.kt

@@ -4,11 +4,14 @@ import android.content.Intent
 import android.os.Bundle
 import android.support.design.widget.BottomNavigationView
 import android.support.design.widget.FloatingActionButton
+import android.support.v7.app.AlertDialog
 import android.support.v7.app.AppCompatActivity
 import android.support.v7.widget.LinearLayoutManager
 import android.support.v7.widget.RecyclerView
 import android.support.v7.widget.Toolbar
 import android.view.MenuItem
+import android.view.View
+import android.widget.TextView
 import io.reactivex.Single
 import me.vadik.knigopis.adapters.BooksAdapter
 import me.vadik.knigopis.api.BookCoverSearchImpl
@@ -16,8 +19,11 @@ import me.vadik.knigopis.api.Endpoint
 import me.vadik.knigopis.api.ImageEndpoint
 import me.vadik.knigopis.auth.KAuth
 import me.vadik.knigopis.auth.KAuthImpl
-import me.vadik.knigopis.model.*
+import me.vadik.knigopis.model.Book
+import me.vadik.knigopis.model.BookHeader
+import me.vadik.knigopis.model.CurrentTab
 import me.vadik.knigopis.model.CurrentTab.*
+import me.vadik.knigopis.model.FinishedBook
 
 private const val ULOGIN_REQUEST_CODE = 0
 
@@ -98,6 +104,13 @@ class MainActivity : AppCompatActivity() {
           refreshOptionsMenu()
           true
         }
+        R.id.option_about -> {
+          val dialogView = View.inflate(this, R.layout.about, null)
+          val versionView = dialogView.findViewById<TextView>(R.id.about_app_version)
+          versionView.text = BuildConfig.VERSION_NAME
+          AlertDialog.Builder(this).setView(dialogView).show()
+          true
+        }
         else -> false
       }
     }

+ 62 - 0
app/src/main/res/layout/about.xml

@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:layout_gravity="center"
+    android:background="?android:attr/selectableItemBackground"
+    android:clickable="true"
+    android:focusable="true"
+    android:orientation="vertical"
+    android:padding="16dp">
+
+    <ImageView
+        android:layout_width="40dp"
+        android:layout_height="40dp"
+        android:layout_gravity="center_horizontal"
+        app:srcCompat="@drawable/ic_letter_k"
+        tools:ignore="ContentDescription" />
+
+    <TextView
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_horizontal"
+        android:layout_marginTop="4dp"
+        android:text="@string/app_name"
+        android:textSize="16sp" />
+
+    <TextView
+        android:id="@+id/about_app_version"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_horizontal"
+        android:textSize="12sp"
+        tools:text="1.0.0" />
+
+    <LinearLayout
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_horizontal"
+        android:layout_marginTop="8dp"
+        android:orientation="vertical">
+
+        <TextView
+            style="@style/AboutItem"
+            android:text="@string/about_idea" />
+
+        <TextView
+            style="@style/AboutItem"
+            android:text="@string/about_logo" />
+
+        <TextView
+            style="@style/AboutItem"
+            android:text="@string/about_developer" />
+
+        <TextView
+            style="@style/AboutItem"
+            android:text="@string/about_designer" />
+
+    </LinearLayout>
+
+</LinearLayout>

+ 5 - 1
app/src/main/res/menu/options.xml

@@ -3,6 +3,10 @@
 
     <item
         android:id="@+id/option_login"
-        android:visible="false"/>
+        android:visible="false" />
+
+    <item
+        android:id="@+id/option_about"
+        android:title="@string/option_about" />
 
 </menu>

+ 8 - 0
app/src/main/res/values-ru/strings.xml

@@ -12,6 +12,7 @@
     <!-- menu -->
     <string name="option_login">Войти</string>
     <string name="option_logout">Выйти</string>
+    <string name="option_about">О приложении</string>
 
     <!-- edit book -->
     <string name="book_option_save">Сохранить</string>
@@ -33,4 +34,11 @@
     <string name="book_confirm_delete">Удалить</string>
     <string name="cannot_delete_book">Не получилось удалить</string>
     <string name="book_hint_notes">Примечания</string>
+
+    <!-- about -->
+    <string name="about_idea">Идея: http://knigopis.com</string>
+    <string name="about_logo">Логотип: https://twitter.com</string>
+    <string name="about_developer">Разработка: vadik@sirekanyan.com</string>
+    <string name="about_designer">Дизайн: anna@sirekanyan.com</string>
+
 </resources>

+ 8 - 0
app/src/main/res/values/strings.xml

@@ -12,6 +12,7 @@
     <!-- menu -->
     <string name="option_login">Login</string>
     <string name="option_logout">Logout</string>
+    <string name="option_about">About</string>
 
     <!-- edit book -->
     <string name="book_option_save">Save</string>
@@ -33,4 +34,11 @@
     <string name="book_confirm_delete">Delete</string>
     <string name="cannot_delete_book">Cannot delete book</string>
     <string name="book_hint_notes">Notes</string>
+
+    <!-- about -->
+    <string name="about_idea">API: http://knigopis.com</string>
+    <string name="about_logo">Logo: https://twitter.com</string>
+    <string name="about_developer">Developer: vadik@sirekanyan.com</string>
+    <string name="about_designer">Designer: anna@sirekanyan.com</string>
+
 </resources>

+ 8 - 0
app/src/main/res/values/styles.xml

@@ -13,4 +13,12 @@
         <item name="iconTint">@color/white</item>
         <item name="android:tint">@color/white</item>
     </style>
+
+    <style name="AboutItem">
+        <item name="android:layout_height">wrap_content</item>
+        <item name="android:layout_width">wrap_content</item>
+        <item name="android:autoLink">web|email</item>
+        <item name="android:padding">4dp</item>
+        <item name="android:textSize">14sp</item>
+    </style>
 </resources>