0
我想在屏幕上顯示圖像,但圖像邊緣將大於屏幕本身的尺寸。 如果IE的最大屏幕寬度是X,那麼我希望圖像的寬度爲X + 100,最大屏幕高度爲Y,那麼圖像高度爲Y + 100。將圖像增加到屏幕尺寸以外
我希望此選項能夠將圖像移動到右側/左側,並且圖像仍然會顯示在整個屏幕上。
我想在屏幕上顯示圖像,但圖像邊緣將大於屏幕本身的尺寸。 如果IE的最大屏幕寬度是X,那麼我希望圖像的寬度爲X + 100,最大屏幕高度爲Y,那麼圖像高度爲Y + 100。將圖像增加到屏幕尺寸以外
我希望此選項能夠將圖像移動到右側/左側,並且圖像仍然會顯示在整個屏幕上。
爲此我使用RelativeLayout
與requestLayout
功能:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent">
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"/>
</RelativeLayout>
並在代碼生成適當的圖像:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
// example code with bigger dimensions than the screen
Bitmap b = Bitmap.createBitmap(width + 100, height + 100, Bitmap.Config.ARGB_8888);
// draw smth on the bitmap
Canvas c = new Canvas(b);
Paint p = new Paint();
p.setColor(Color.RED);
c.drawCircle(b.getWidth()/2,
b.getHeight()/2,
Math.min(b.getWidth(), b.getHeight())/2,
p);
// set the image
ImageView iv = (ImageView) findViewById(R.id.iv);
iv.setImageBitmap(b);
// call this method to change imageview size
iv.requestLayout();
這是很好的,如果我想畫圓,但我想提請一個現有的可繪製圖像。我怎樣才能做到這一點?謝謝。 –
對不起,我不知道現有的類可以爲你做什麼,也許有一些scrollview。但是如果你想讓圖像大於屏幕,我給了你解決方案。如果你想從資源中設置一個現有的圖像(爲了簡單起見),你可以使用'd = getResource()。getDrawable(R.drawable.image)'和'iv.setImageDrawable(d)'。 – m039