問題預覽
- 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
。
重新啓動即可。