Android學習|問題彙總(一)

問題預覽

  • 1.解決在Scrollview上面的佈局文件被擋住,無法獲得焦點的問題。
    2.解決頁面跳轉時不是跳轉到最上面的問題。
    3.在Android中獲取“Context”的靜態方法
    4.解決Android Studio不停的Indexing的問題
    5.解決程序卡在Building gradle project的問題

1.解決在Scrollview上面的佈局文件被擋住,無法獲得焦點的問題。

  • 在佈局文件中,使用FramLayout或RelativeLayout時,每個控件都是覆蓋顯示的,後加進來的控件會覆蓋前面的控件
    所以可以使用view.bringToFront() 可以將佈局在下層的控件放到上層,使它顯示在最上層,不被其他控件擋住。

2.解決頁面跳轉時不是跳轉到最上面的問題。

  • 原因:界面中的某一佈局的控件獲取到了焦點。
    解決方法:讓最上方的界面上的某一個組件獲取焦點
    1、xml中:

    android:focusable="true"
    android:focusableInTouchMode="true"
    

    2、代碼中:

    view.setFocusable(true);
    view.setFocusableInTouchMode(true);
    view.requestFocus()
    

3.在Android中獲取“Context”的靜態方法

  • 新建MyApplication類,並在Manifest文件中聲明。

    public class MyApplication extends Application {
    
        private static Context context;
    
        public void onCreate() {
            super.onCreate();
            MyApplication.context = getApplicationContext();
        }
    
        public static Context getAppContext() {
            return MyApplication.context;
        }
    } 
    

    當需要獲得Context時,調用MyApplication.getAppContext()來獲取。
    可以解決在類中無法使用getContext()或getActivity()等方法時所帶來的麻煩。

4.解決Android Studio不停的Indexing的問題

  • 當AS不停的Indexing,頻繁重複,一秒幾次而且關不掉的時候,在File 裏面找到 Invalidate
    Caches/Restart
    ,重啓一下。

5.解決程序卡在Building gradle project的問題

  • 解決辦法:
    修改該project的gradle-wrapper.properties裏的gradle版本爲自己電腦已有的版本。比如已有gradle-3.3-all.zip,那麼只需將最後一行替換掉:
    distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
    重新啓動即可。
發佈了45 篇原創文章 · 獲贊 8 · 訪問量 7756
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章