List,grid view所遇到的坑

2021-07-25 07:15:19 字數 1552 閱讀 8735

在專案中我們可能會用sqlite儲存使用者的一些記錄,比如記事本就要儲存每次記錄,然後在首頁及時的將改變後的item顯示出來,但實際上可能存在各種各樣的坑,比如資料確實寫入了,我也呼叫notifydatasetchange()了,但是為啥你不變!!!!

這裡我遇到的是兩個問題:

你可能會說是啊,我在記錄資料onstop()方法寫入資料庫sqlite,然後顯示的activity的onresume()方法,全部刪掉資料來源,然後在從sqlite將最新的讀取出來,然後再呼叫notifydatasetchange()難道還不行麼!!!!

確實不行

因為寫入資料的activity的onstop()方法,是在顯示資料的activity的onresume()方法之後呼叫的,所以你沒有在顯示之前將資料及時更新,所以一般都是要返回兩次之後才可以,不行,可以看這個截圖。

a代表要顯示資料的acticity,b代表要寫入資料的activity

a的onresume()方法在b的onstop()方法之後,但在b的onpause()方法之前,所以我們只要在b的onpause()方法中寫入資料,a就能及時的獲取到了。

我們在xml檔案中設定分割線高度屬性的時候,是不是用 1 dp或是 1 dip之類的,然後在手機上一看,好粗。。。

這裡有個合理的解釋。

這個解釋的意思是使用dp或是dip作為單位,系統會根據手機的解析度然後適當的改變,所以我們應該使用px作為單位,應為px是固定的,不行你試一下。

ps: 如何給cardview設定背景,就上面listview中的cardview那樣,給它設定背景,然後還可以通過xml就可以表現出圓角,陰影等高階特性,那不是很厲害麼。。

我嘗試的答案是在cardview內部巢狀imageview,然後在imageview顯示就可以了。

本以為要模仿聊天效果要自己呼叫addview()方法去新增view,但是listview本身就能做到,只是有一些從來沒見過的屬性要設定一下。

我們要實現的效果有兩個:

1. 來了乙個訊息,將訊息新增到listview中

2. 保持最新的item能夠讓使用者可見,就是listview如果滿了,它會自動上移來顯示出最新的item

android:id="@+id/content"

android:layout_width="match_parent"

android:layout_height="0dp"

android:layout_weight="1"

android:divider="@null"

android:dividerheight="2dp"

android:transcriptmode="alwaysscroll" />

今天所遇到的問題

首先,昨天晚上做完了xenomai與linux核心編譯的任務,今天交付了 問題一 虛擬機器解除安裝 虛擬機器在安裝的時候目錄不太對,受不了就想把目錄改了,改的時候發現改不了,我就在任務管理器裡面把有關程序刪了,刪完發現,嘿果然能改目錄了,結果改完後虛擬機器裡面的linux不能用了,重啟電腦都不能用,...

screeps所遇到的難題

首先記錄一下遇見的問題 1.使不同的小兵分別移動到不同的目的地 已解決,sources陣列改下標就好。每個mode中的 中,以roleupgrader教程 為例 1 var roleupgrader creep 4 run function creep 10 11else15 16 17 1819 ...

git所遇到的問題

出現這種情況,或 error repository not found.fatal 無法讀取遠端倉庫。解決辦法如下 1 先輸入 git remote rm origin 刪除關聯的origin的遠端庫 2 再輸入 git remote add origin git github.com github...