-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMainActivity.kt
162 lines (135 loc) · 6.22 KB
/
MainActivity.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
package com.example.dictionary_public
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.Menu
import android.view.MenuInflater
import android.view.MenuItem
import android.view.View
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.firebase.firestore.ktx.firestore
import com.google.firebase.ktx.Firebase
import kotlinx.android.synthetic.main.activity_main.*
import java.util.zip.Inflater
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val db = Firebase.firestore // Access a Cloud Firestore instance from your Activity (初始化Firebase)
var i:Int=0
val arrayList_main = ArrayList<Model>()
db.collection("companies")
.get()
.addOnSuccessListener { result ->
for (document in result) {
var ti:String = document.data["title"].toString()
var des:String = document.data["des2"].toString()
i=i+1
if(i==1)
arrayList_main.add(Model(ti,des,R.drawable.a1))
else if(i==2)
arrayList_main.add(Model(ti,des,R.drawable.a2))
else if(i==3)
arrayList_main.add(Model(ti,des,R.drawable.a3))
else if(i==4) {
arrayList_main.add(Model(ti, des, R.drawable.a4))
}
else if(i==5) {
arrayList_main.add(Model(ti, des, R.drawable.a5))
}
else if(i==6) {
arrayList_main.add(Model(ti, des, R.drawable.a6))
}
else if(i==7) {
arrayList_main.add(Model(ti, des, R.drawable.a7))
}
else if(i==8) {
arrayList_main.add(Model(ti, des, R.drawable.a8))
i=0
}
}
val myAdapter_main = MyAdapter(arrayList_main,this)
recyclerView2.layoutManager=LinearLayoutManager(this)
recyclerView2.adapter = myAdapter_main
}
button1.setOnClickListener(mListener)
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
val inflater = menuInflater
inflater.inflate(R.menu.menu_item,menu)
return true
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when(item.itemId){
R.id.notes_menu ->{
Toast.makeText(this,"Go to notes~",Toast.LENGTH_SHORT).show()
val intent = Intent(this,notes::class.java)
this.startActivity(intent)
return true
}
R.id.pen_menu ->{
Toast.makeText(this,"Go to pen~",Toast.LENGTH_SHORT).show()
val intent = Intent(this,pen::class.java)
this.startActivity(intent)
return true
}
R.id.app_des ->{
Toast.makeText(this,"Go to 說明頁面~",Toast.LENGTH_SHORT).show()
AlertDialog.Builder(this)
//AlertDialog.Builder (context: Context)
//參數放要傳入的 MainActivity Context
.setTitle("APP使用說明")
.setMessage("1.本字典為有聲字典,所有單字和例句都會有人工語音幫妳念出來,不用再花時間去看KK音標.\n" +
"2.當遇到沒見過的單字也可以新增到筆記本裡面觀看!\n3.筆記本裡面的單字都是可以自由刪除的.\n" +
"4.每個單字裡面的例句解釋都是可以在Firebase自由新增和更改的~\n5.當想查詢特定字母開頭的單字時,可以使用關鍵字查詢單字.") //訊息內容
.setPositiveButton("確認") {_,_ ->
Toast.makeText(this,"你按了確認~",Toast.LENGTH_SHORT).show()
}
.create()
.show()
return true
}
else ->{
return super.onOptionsItemSelected(item)
}
}
}
private val mListener = View.OnClickListener {
val db = Firebase.firestore // Access a Cloud Firestore instance from your Activity (初始化Firebase)
var i:Int=0
val arrayList_main = ArrayList<Model>()
db.collection("companies")
.orderBy("title")
.startAt(add_editText1.text.toString())
.endAt(add_editText1.text.toString()+"\uf8ff")
.get()
.addOnSuccessListener { result ->
for (document in result) {
var ti:String = document.data["title"].toString()
var des:String = document.data["des2"].toString()
i = i + 1
if (i == 1)
arrayList_main.add(Model(ti, des, R.drawable.a1))
else if (i == 2)
arrayList_main.add(Model(ti, des, R.drawable.a2))
else if (i == 3)
arrayList_main.add(Model(ti, des, R.drawable.a3))
else if (i == 4) {
arrayList_main.add(Model(ti, des, R.drawable.a4))
} else if (i == 5) {
arrayList_main.add(Model(ti, des, R.drawable.a5))
} else if (i == 6) {
arrayList_main.add(Model(ti, des, R.drawable.a6))
} else if (i == 7) {
arrayList_main.add(Model(ti, des, R.drawable.a7))
i = 0
}
}
val myAdapter_main = MyAdapter(arrayList_main,this)
recyclerView2.layoutManager=LinearLayoutManager(this)
recyclerView2.adapter = myAdapter_main
}
}
}