4. OnKeyUp. احصل على باركود من ماسحة ضوئية مضاهاة لوحة المفاتيحتطبيق على TSD والتواصل مع 1C: Enterprise 8.3 من خلال HTTP-Service. الجزء 5 (القائمة ، كائن مصاحب)
كل تطبيق له متغيرات عالمية. على سبيل المثال ، واحد منهم هو اسم قاعدة البيانات. لا أعرف كم هذا صحيح من وجهة نظر kotlin-way. من أجل تعيين المتغيرات العامة لأحد التطبيقات ، سنفعل ما يلي.
إنشاء مشروع جديد
Navigation Drawer Activity
. في ذلك سنتعلم كيفية العمل مع القائمة ، وإنشاء صفحة مع الإعدادات. بجانب MainActivity ، قم بإنشاء فصل جديد
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
في علامة
<application
، أضف السطر
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>
هذا كل شيء. الآن ، من أي جزء من التطبيق ، يمكننا أن نأخذ متغيراتنا من خلال الإشارة إليها باسم
MyApp.
نمر إلى الجزء الثاني. هيا نلعب مع القائمة. لنقرر على الفور أنه سيكون لدينا قائمة خاصة بكل جزء. الآن في المشروع يبدو هذا.
إنشاء قائمة جديدة.
New - Menu resource file
ضع النص التالي في الملف.
orderInCategory
يشير إلى موضع القائمة. أقل أعلى. نتذكر
BASIC
والرقم 10 ، 20 ، 30 - لذلك سيكون لدينا دائما الفرصة لإضافة عنصر آخر بين العناصر. ->
<?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>
نعتقد أن نشاطنا الرئيسي لا يحتوي على قائمته الخاصة. لذلك ، نقوم بحذف الوظيفة بجرأة
override fun onCreateOptionsMenu(menu: Menu): Boolean {
وفي ملف
ui/gallery/GalleryFragment
،
ui/gallery/GalleryFragment
تحديد وظيفتين.
override fun onCreate(savedInstanceState: Bundle?) { setHasOptionsMenu(true)
وفي النهاية نضيف الوظيفة
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) }
هذا كل شيء. بقياس كل جزء ، يمكننا الآن إضافة قائمتنا الخاصة.