Android 開發(fā)所遇問題

1.?環(huán)境問題

2018-7-25

問題:AVD啟動(dòng)不了 ——?報(bào)x86需要加速程序錯(cuò)誤 ——?在SDK管理器中重新安裝這個(gè)組件出錯(cuò) ——?報(bào)Hyper-V Hyper-Vx沖突

解決:win10 ——?控制面板 》程序與功能 》啟用或關(guān)閉Windows功能 ——?取消選擇Hyper-V


2. AndroidStudio問題

2021-02-16

問題:對(duì) drawable layout 進(jìn)行大量替換和修改底洗,編譯出錯(cuò):AAPT: error drawable not found

解決:沒有解決了,無論怎么刷新十酣、重啟馅闽、修改、刪除新增都不行熙参,只能重新建一個(gè)項(xiàng)目艳吠,復(fù)制文件。

更新:是界面新版本孽椰,drawable xml 不能設(shè)置 tint

2020-9-28

問題:應(yīng)用崩潰后重啟昭娩,看不到日志

解決:在Logcat選擇崩潰的包名查看日志,xxx.xxx.xxx 【DEAD】

2018-9-24

問題:Kotlin not configed

解決:項(xiàng)目七轉(zhuǎn)八轉(zhuǎn)黍匾,一頓瞎操作栏渺,最后把kotlin的版本都弄錯(cuò)了,在項(xiàng)目build.gradle中把kotlin版本改回與gradle相對(duì)應(yīng)版本(會(huì)有提示)锐涯。

2018-9-24

問題:Android Studio?抽風(fēng)磕诊,?不停報(bào)錯(cuò):Stub index points to a file without PSI: com.intellij.openapi.fileTypes ... ...?

解決:File》Invalidate Cashes / Restart

2018-7-31

問題:真機(jī)測(cè)試時(shí),安裝應(yīng)用失敗纹腌,卸載了之前版本也沒有

解決:Android studio —— File》Settings》Build》Instant Run ——?取消選擇Enable Instant Run ...

后續(xù)(2018.9.21):發(fā)現(xiàn)?Instant Run?還是挺有用的霎终,打開此功能,將 app》build》intermediates?文件夾刪掉再編譯運(yùn)行升薯,可以用了

3.?代碼問題

2021-11-04

問題:Android 6.0 之前使用代碼設(shè)置LinearLayout子View 的 margin莱褒,有時(shí)候會(huì)無效

原因:不同版本LinearLayout.generateLayoutParams方法不一樣,新版本會(huì)處理參數(shù)是MarginLayoutParams時(shí)候的情況涎劈。舊版下广凸,會(huì)因?yàn)榇朔椒]有處理,導(dǎo)致LinearLayout.addView方法蛛枚,會(huì)因參數(shù)是MarginLayoutParams而不是LinearLayout.LayoutParams時(shí)谅海,丟掉margin信息。

解決:addView時(shí)確保使用的是LinearLayout.LayoutParams蹦浦。同理扭吁,RelativeLayout也一樣。

2021-05-14

問題:RecyclerView setAdapter 與 adapter.notifyDatasetChanged 幾乎同時(shí)執(zhí)行時(shí),顯示異常

解決:只執(zhí)行一個(gè)

2021-04-04

問題:給LinearLayout 或者 RecyclerView設(shè)置.9圖之后智末,子View的位置發(fā)生變化谅摄。

原因:可能是個(gè)BUG,改變View背景可能會(huì)改變view的padding

解決:設(shè)置背景后系馆,重新設(shè)置padding

2020-12-16

問題:RecyclerView的報(bào)錯(cuò) Inconsistency detected. Invalid view holder adapter positionViewHolder

原因:數(shù)據(jù)list內(nèi)容改變后送漠,沒有及時(shí)通知列表內(nèi)容變化。要保證先改變list由蘑,后通知闽寡,并且在同一線程順序執(zhí)行。

2020-12-14

問題:AlarmManager無法傳遞PendingIntent中的Parcelable類型Extra尼酿。設(shè)置了Parcelable的extra之后爷狈,不僅這個(gè)數(shù)據(jù)丟失,連同一起設(shè)置的其他extra一起丟失裳擎。

原因:網(wǎng)絡(luò)上的解釋是系統(tǒng)如果需要修改Intent時(shí)涎永,需要重建intent的extra,而系統(tǒng)沒有自定義的類鹿响,這個(gè)步驟會(huì)崩潰羡微,鬧鐘觸發(fā)時(shí)只會(huì)得到空數(shù)據(jù)。

解決:Anroid N之前還可能用惶我。之后只能設(shè)置基本類型數(shù)據(jù)妈倔,或者將Parcelable轉(zhuǎn)為基本類型傳遞。

2020-5-4

問題: View先從父View中移除再添加绸贡,依然報(bào)已有父View的錯(cuò)誤

原因:View在從父View中移除時(shí)盯蝴,有Translation動(dòng)畫,還沒有真正從父View中移除听怕∨跬Γ看源碼好像是低版本的BUG,當(dāng)前出現(xiàn)問題的系統(tǒng) Android 7.0

2020-4-5

問題:GridLayout?動(dòng)態(tài)添加控件不顯示叉跛,Android 6.0以上系統(tǒng)測(cè)試正常松忍,向下兼容時(shí)出現(xiàn)蒸殿。

原因:引用的是?android.widget.GridLayout

解決:添加依賴:implementation"androidx.gridlayout:gridlayout:1.0.0"筷厘,并引用?androidx.gridlayout.widget.GridLayout『晁看來android.widget.GridLayout已經(jīng)被拋棄了酥艳。但竟然可以在高版本使用,F(xiàn)**K爬骤。

2019-4-3

問題:ViewGroup啟用LayoutTransition時(shí)充石,動(dòng)態(tài)添加這個(gè)ViewGroup自己卻有動(dòng)畫

原因:本以為?LayoutTransition只作用于ViewGroup的子View,但是LayoutTransition類源碼runChangeTransition函數(shù)顯示:如果 mAnimateParentHierarchy?為true霞玄,啟用ViewGroup的父ViewGroup的動(dòng)畫骤铃,作用于當(dāng)前ViewGroup拉岁。

解決:transition.setAnimateParentHierarchy(false)

2019-2-13

問題:RecyclerView?滾動(dòng)之后?item?點(diǎn)擊事件失效,表現(xiàn)為點(diǎn)擊兩次或過一會(huì)兒點(diǎn)擊生效

原因:RecyclerView?嵌套在CoordinatorLayout中產(chǎn)生此問題惰爬,RecyclerView?滾動(dòng)表面上結(jié)束了喊暖,內(nèi)容還處于Fling狀態(tài),不能響應(yīng)點(diǎn)擊撕瞧。RecyclerView 28.0.0?版本在修復(fù)舊版本問題的時(shí)候引入此新?BUG陵叽。

解決:禁止直接嵌套。

2018-9-18

問題:自定義TextView初始化時(shí) SingleLine?屬性與?Gravity.Center?混用丛版,導(dǎo)致不繪制

解決:這是TextView的一個(gè)Bug巩掺,沒辦法,估計(jì)Google也不會(huì)注意到這個(gè)問題上來页畦。

2018-8-10

問題:自定義屬性 obtainStyledAttributes?死活找不到?R.styleable.xxx?但是能找到?R.styleable.xxx_xxx

解決:錯(cuò)誤提示垃圾了胖替,其實(shí)是 attrs.xml?出現(xiàn)了問題。我的問題:

1豫缨、有重復(fù)?attr?屬性名稱刊殉,將重復(fù)的屬性名稱移動(dòng)到 declare-styleable?外面,引用時(shí)只包含名稱州胳。

2记焊、attr?名稱有一個(gè)是 “new”?系統(tǒng)不接受,也不提示錯(cuò)誤 f*******k?

2018-8-2

問題:?ViewPager使用栓撞,PagerAdapter.notifyDataSetChanged()不更新數(shù)據(jù)遍膜。

過程:網(wǎng)上回答比較多的是 getItemPosition?return POSITION_NONE,還有其他使用?FragmentPagerAdapter瓤湘,F(xiàn)ragmentStatePagerAdapter的瓢颅,復(fù)寫了其他方法的,統(tǒng)統(tǒng)嘗試了在我的工況下沒有效果弛说。

結(jié)果:stackoverflow?上這個(gè)問題持續(xù)問了六年挽懦,不斷有人回答,討論木人,結(jié)果仍然不夠明朗信柿。

解決:其實(shí)只需要給?ViewPager 重新設(shè)置一次更新數(shù)據(jù)了的?PagerAdapter?即可。這并沒有損失多少性能醒第,重新設(shè)置 adpater?與?return POSITION_NONE?是一個(gè)原理渔嚷,重新生成了2~3個(gè)View而已。

2018-7-31

問題:java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.ViewGroup.transformMatrixToGlobal(android.graphics.Matrix)' on a null object reference

工況:Activity A?中的 RecyclerView?中的 item?與?Activity B?中的一個(gè)View共享稠曼,使用共享元素動(dòng)畫在二者間跳轉(zhuǎn)形病,?為了動(dòng)畫更柔和沒有閃爍,從?B?返回 A?時(shí)先通過 BroadcastReceiver?把數(shù)據(jù)返回來,?更新了 A?中?item漠吻,使用了?RecyclerView?的?notifyItemChanged(position:Int)量瓜,共享元素動(dòng)畫結(jié)束時(shí)報(bào)錯(cuò)。

原因:經(jīng)測(cè)試途乃,不同系統(tǒng)版本榔至,不同 RecyclerView?版本(27.1.1?與 26.1.0)表現(xiàn)不一樣,以上問題發(fā)生在使用?notifyItemChanged(position:int)?會(huì)重新調(diào)用?onCreateViewHolder?即使?Item?還在可視區(qū)欺劳,這個(gè)調(diào)用導(dǎo)致共享元素發(fā)生變化唧取,不再是同一個(gè)View,從而使?B?返回?A?時(shí)的動(dòng)畫找不到原來的?View?報(bào)錯(cuò)划提。

解決:改調(diào)用?notifyItemChaned(position: Int, payload: Object)枫弟,payload?傳 0?即可。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鹏往,一起剝皮案震驚了整個(gè)濱河市淡诗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌伊履,老刑警劉巖韩容,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異唐瀑,居然都是意外死亡群凶,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門哄辣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來请梢,“玉大人,你說我怎么就攤上這事力穗∫慊。” “怎么了?”我有些...
    開封第一講書人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵当窗,是天一觀的道長(zhǎng)够坐。 經(jīng)常有香客問我,道長(zhǎng)崖面,這世上最難降的妖魔是什么元咙? 我笑而不...
    開封第一講書人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮嘶朱,結(jié)果婚禮上蛾坯,老公的妹妹穿的比我還像新娘。我一直安慰自己疏遏,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著财异,像睡著了一般倘零。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上戳寸,一...
    開封第一講書人閱讀 51,482評(píng)論 1 302
  • 那天呈驶,我揣著相機(jī)與錄音,去河邊找鬼疫鹊。 笑死袖瞻,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的拆吆。 我是一名探鬼主播聋迎,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼枣耀!你這毒婦竟也來了霉晕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤捞奕,失蹤者是張志新(化名)和其女友劉穎牺堰,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颅围,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡伟葫,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了院促。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扒俯。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖一疯,靈堂內(nèi)的尸體忽然破棺而出撼玄,到底是詐尸還是另有隱情,我是刑警寧澤墩邀,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布掌猛,位于F島的核電站,受9級(jí)特大地震影響眉睹,放射性物質(zhì)發(fā)生泄漏荔茬。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一竹海、第九天 我趴在偏房一處隱蔽的房頂上張望慕蔚。 院中可真熱鬧,春花似錦斋配、人聲如沸孔飒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坏瞄。三九已至桂对,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間鸠匀,已是汗流浹背蕉斜。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缀棍,地道東北人宅此。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像爬范,于是被迫代替她去往敵國(guó)和親父腕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容