A. android 我圖片保存在drawable中。名字是從資料庫中讀出來,怎麼讓名字與圖片匹配急急急
在Android開發中,若圖片保存在drawable文件夾內,每張圖片確實會自動生成一個ID,並存儲在R文件中。為了將圖片名稱與ID關聯,一種方法是直接將這些ID保存在資料庫中,使用時直接調用對應的ID即可。這樣,你可以在應用中通過ID快速訪問圖片資源。
另一種方法則是將圖片名稱直接存儲在資料庫中,當需要載入圖片時,通過讀取資料庫中的圖片名稱,再使用R.id.圖片名稱的形式來引用圖片資源。這種方式能夠直接通過名稱訪問圖片,提高了代碼的可讀性和靈活性。
具體實現時,可以考慮以下步驟:首先,在drawable文件夾中放置圖片,並生成對應的ID;其次,在資料庫中存儲圖片名稱或ID;最後,在需要使用圖片的地方,通過讀取資料庫中的信息,獲取圖片名稱或ID,然後載入圖片。
例如,假設你已經將圖片名稱保存在資料庫中,那麼在載入圖片時,可以使用類似如下的代碼:
java
String imageName = database.queryImageName();
int resourceId = getResources().getIdentifier(imageName, "drawable", getPackageName());
ImageView imageView = findViewById(R.id.imageView);
imageView.setImageResource(resourceId);
這種方法不僅方便,還能避免直接使用硬編碼的資源ID,提高代碼的維護性和可擴展性。
B. android開發中下載圖片並且保存到sd卡中,不通過點擊什麼的怎麼完成,代碼如下
OutputStream os = openFileOutput("test.png", MODE_WORLD_READABLE);
byte[] buff = new byte[1024];
int hasRead = 0;
while((hasRead = is.read(buff)) > 0){
os.write(buff, 0, hasRead);
}
is.close();
os.close();
你這里不是已經存文件了嗎,只是這種是存在app的私有目錄中
如果要存在指定位置,就用
FileOutputStream fout = new FileOutputStream(path,append);
這種啊
C. android中的ImageView顯示默認圖片
android中的ImageView顯示默認圖片有兩種方式:
在xml中增加圖片的引用,android:src="@drawable/image"即可。
在java代碼中設置
ImageView image = (ImageView) findViewById(R.id.image);
image.setImageResource(R.drawable.image);
注意,需要先將image圖片,放到res/drawabl目錄下。
D. 當Android旋轉屏幕導致橫豎屏切換時,如何保存當前Fragment的實例
總結了以下幾種情況:
設備旋轉時保存Activity的交互狀態: onSaveInstanceState();
設備旋轉時保存Fragment的交互狀態: setRetainInstance(true);
設備旋轉時保存WebView的數據:
android:configChanges="keyboardHidden|orientation|screenSize";
設備旋轉時保存在自定義View中繪制的圖形。
如果Fragment不包含WebView,只是簡單的UI View,像是TextView, Button, CheckBox, ImageView... 不建議使用setRetainInstance方法,只需要記住當前fragment的index,然後在設備旋轉後根據數據重新實例化一個fragment。因為不包含大量數據,旋轉的過程中幾乎可以用「無縫切換」來形容。
如果包含WebView還是採用針對WebView的方法(題主的情況)。所以要看情況而定。