4. OnKeyUp. Holen Sie sich einen Barcode von einem Scanner mit TastaturemulationAnwendung auf TSD und Kommunikation mit 1C: Enterprise 8.3 über HTTP-Service. Teil 5 (Menü, Begleitobjekt)
Jede Anwendung verfügt über globale Variablen. Einer davon ist beispielsweise der Name der Datenbank. Ich weiß nicht, wie sehr dies aus der Sicht von Kotlin-Way richtig ist. Um globale Variablen für eine Anwendung festzulegen, gehen Sie wie folgt vor.
Erstellen Sie eine neue Projektnavigations-
Navigation Drawer Activity
. Darin lernen wir, mit dem Menü zu arbeiten und eine Seite mit den Einstellungen zu erstellen. Erstellen Sie neben MainActivity eine neue Klasse
class MyApp: Application() { companion object { var baseUrl = "http://192.168.0.1/unf/hs/inntsd/v1/" const val dbName = "mws_db" var user1C = "tsd" var pass1C = "123123" } }
AndroidManifest.xml
in
AndroidManifest.xml
im
<application
Tag die Zeile
android:name=".MyApp"
AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.domain.myapp"> <application android:name=".MyApp" android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity" android:label="@string/app_name" android:theme="@style/AppTheme.NoActionBar"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
Das ist alles. Jetzt können wir von jedem Teil der Anwendung aus unsere Variablen übernehmen, indem wir sie als
MyApp.
Wir gehen zum zweiten Teil über. Lass uns mit dem Menü spielen. Lassen Sie uns sofort entscheiden, dass wir für jedes Fragment ein eigenes Menü haben. Jetzt sieht es im Projekt so aus.
Erstellen Sie ein neues Menü.
New - Menu resource file
den folgenden Text in die Datei ein.
orderInCategory
gibt die Position des Menüs an. Weniger ist höher. Wir erinnern uns an
BASIC
und Nummer 10, 20, 30 - So haben wir immer die Möglichkeit, ein weiteres Element zwischen den Elementen hinzuzufügen. -!>
<?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/gallery_clear" android:orderInCategory="10" android:title="" app:showAsAction="never" /> <item android:id="@+id/gallery_send" android:orderInCategory="20" android:title="" app:showAsAction="never" /> </menu>
Wir glauben, dass unsere Hauptaktivität kein eigenes Menü hat. Deshalb löschen wir die Funktion kühn
override fun onCreateOptionsMenu(menu: Menu): Boolean {
In der Datei
ui/gallery/GalleryFragment
definieren
ui/gallery/GalleryFragment
zwei Funktionen neu.
override fun onCreate(savedInstanceState: Bundle?) { setHasOptionsMenu(true)
Und am Ende fügen wir die Funktion hinzu
override fun onOptionsItemSelected(item: MenuItem): Boolean { when (item.getItemId()) { R.id.gallery_clear -> Log.d("MenuDebug", " ") R.id.gallery_send -> Log.d("MenuDebug", " ") } return super.onOptionsItemSelected(item) }
Das ist alles. Analog zu jedem Fragment können wir nun unser eigenes Menü hinzufügen.