原创 Android 8.0.0 TextInputLayout內的EditText上的提示文本引起崩潰

問題描述: 在Android 8.0以後在EditText控件上多了一種自動填充功能, 可以在手機的設置->輸入->自動填充功能中打開或者關閉, 但此功能在8.0 TextInputLayout 嵌套 EditText 的情況下使用時會引

原创 評論功能

1.佈局<ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="match_p

原创 activity 切換動畫

1.四個動畫 left_in.xml <translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="200"

原创 仿微信朋友圈預覽功能

話不多說,先上圖主要功能就是如圖中所示,點擊圖片放大,拖拽圖片縮小到列表中圖片位置處消失。這個功能其實原理是這樣的(我猜):首先點擊列表中的圖片跳轉到新的Acticity進行預覽,當然這個Activity必須是透明的;跳轉的時候需要將列表

原创 Service更新UI

Service使用發送廣播的方式更新UI, 方法如下:首先在啓動Service的方法中的線程中發送廣播:@Override public int onStartCommand(Intent intent, int flags, int s

原创 WebView開啓緩存

當我們加載Html時候,會在我們data/應用package下生成database與cache兩個文件夾: 我們請求的Url記錄是保存在webviewCache.db裏,而url的內容是保存在webviewCache文件夾下. WebVi

原创 Activity被回收導致fragment的getActivity爲null的解決辦法

這兩天一直被這個問題困擾,假如app長時間在後臺運行,再點擊進入會crash,而且fragment頁面有重疊現象,讓我十分不爽。研究了一天,終於明白其中的原理並加以解決。解決辦法如下:    如果系統內存不足、或者切換橫豎屏、或者app長

原创 Android面試常問問題-Handler機制

昨天面試官問的是一個線程中能不能創建多個Handler對象?本以爲對Handler機制挺了解了,可還是懵了,項目裏沒有遇到過這種情況,首先答案是肯定的,能創建多個,下面再解釋下Handler發送消息的過程:首先可以確定的是每個線程中只能有

原创 自帶圖片按下去效果的RadioButton

public class EffectRadioButton extends RadioButton { public EffectRadioButton(Context context) { super(con

原创 WebView加載網頁無法彈出對話框

兩步解決問題: 第一:mWebView.setWebChromeClient(new WebChromeClient());第二: mWebView.setWebViewClient(new WebViewClient() {

原创 view第一次執行動畫沒效果,之後正常

問題描述: view的初始狀態爲View.GONE, 在執行動畫之前設置view.setVisibility(View.VISIBLE); 解決方法: 將view的初始狀態變成View.INVISIBLE, 完美解決問題. 原因簡述: I

原创 自定義帶一鍵清除的EditText

import android.content.Context; import android.graphics.Rect; import android.graphics.drawable.Drawable; import android

原创 使用 ViewPager + GridView 導致頁面卡頓

原因一:滑動的時候需要預加載另外兩份數據導致UI卡頓; 原因二:在onPageSelected裏面做耗時操作,經測試可知onPageSelected是執行刷新UI之前的,所以造成滑動會卡的現象; 解決方法:在onPageSelected裏