Rumah  >  Artikel  >  Java  >  Bagaimana untuk Mengakses Kandungan Sumber Tanpa Konteks Aktiviti?

Bagaimana untuk Mengakses Kandungan Sumber Tanpa Konteks Aktiviti?

Linda Hamilton
Linda Hamiltonasal
2024-11-16 18:44:03897semak imbas

How to Access Resource Content Without an Activity Context?

Mengakses Kandungan Sumber Tanpa Konteks Aktiviti

Jika anda perlu mengakses kandungan sumber sebelum memulakan aktiviti, anda mungkin menghadapi cabaran kerana Aktiviti menyediakan kaedah getResources(). Begini cara anda boleh memintas pengehadan ini:

  1. Buat Subkelas Aplikasi:

    Lanjutkan kelas Aplikasi untuk mencipta kelas aplikasi tersuai. Contohnya:

    public class App extends Application {}
  2. Tetapkan Rujukan AndroidManifest:

    Dalam AndroidManifest.xml, tetapkan atribut android:name bagi

    <application android:name=".App" ...>
    ...
    </application></p>
    </li>
    <li>
    <p><strong>Konteks Statik dan Kaedah Pendapatan:</strong></p>
    <p>Dalam kaedah onCreate() kelas aplikasi anda, simpan konteks ke medan statik dan cipta kaedah statik untuk mengembalikannya. Contohnya:</p>
    <pre class="brush:php;toolbar:false">public class App extends Application {
    
        private static Context mContext;
    
        @Override
        public void onCreate() {
            super.onCreate();
            mContext = this;
        }
    
        public static Context getContext() {
            return mContext;
        }
    }
  3. Akses Sumber:

    Kini anda boleh mendapatkan konteks dan sumber menggunakan:

    Context context = App.getContext();
    Resources resources = context.getResources();

Kaedah ini membolehkan anda mengakses kandungan sumber daripada konteks statik di mana objek Aktiviti mungkin tidak tersedia.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Kandungan Sumber Tanpa Konteks Aktiviti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn