2015-03-21 3 views
0

У меня есть изображение 1500x1500px, и я установил его как android:background и установил ширину и высоту макета как 1500px в FrameLayout. Я хочу видеть весь образ, но я могу видеть только его часть, потому что я не могу пронзить его, чтобы увидеть целое. Я установил изображение в качестве фона, чтобы я мог поместить кнопки на изображение.Просмотреть фоновое изображение за пределами размера экрана

Как просмотреть фоновое изображение за пределами экрана телефона?

MainActivity.java

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Bitmap bmp = BitmapFactory.decodeResource(this.getResources(), 
      R.drawable.finalmap); 
    ImageView imageView = new ScrollableImageView(this);// or find it by id 
    android.view.ViewGroup.LayoutParams layoutParams = imageView.getLayoutParams(); 
    layoutParams.width = bmp.getWidth(); 
    layoutParams.height = bmp.getHeight(); 
    imageView.setLayoutParams(layoutParams); 
} 

ответ

1

Использование ScrollableImageView (https://github.com/Egorand/android-scrollable-imageview/blob/master/src/com/egorand/scrollableimageview/ScrollableImageView.java) для осуществления прокрутки ImageView.

Пример: (Удалить все импорта LayoutParam, а затем добавить это)

import android.view.ViewGroup.LayoutParams;

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.your_1500x1500px_image); private ImageView imageView = new ScrollableImageView(this);// or find it by id imageView.setLayoutParams(new LayoutParams(bmp.getWidth(), bmp.getHeight())); imageView.setImageBitmap(bmp);

Не забудьте скопировать класс ScrollableImageView в пакете !!!!

попробовать, как этот

android.view.ViewGroup.LayoutParams layoutParams = imageView.getLayoutParams(); 
layoutParams.width = bmp.getWidth(); 
layoutParams.height = bmp.getHeight(); 
imageView.setLayoutParams(layoutParams); 
+0

спасибо. Я прочитал много git-репозиций, которые я могу поместить в свой проект Android, но проблема в том, что я не могу добавить его в Android. Я пробовал процедуры о том, как добавить библиотеку в андроид-студию, подобную этой: http://stackoverflow.com/questions/16588064/how-do-i-add-a-library-project-to-the-android-studio , Можете ли вы помочь мне, как я могу добавить/импортировать библиотеку, такую ​​как класс выше в андроид-студии. – ThisGuy

+0

Для этой проблемы вам нужно просто скопировать этот java-файл в ваш пакет. а затем использовать его. – DroidDev

+0

ОК. Btw, 'new LayoutParams' и' context' находятся в красной строке, я думаю, что он их не читает. Что мне с этим делать? – ThisGuy

0

хорошо я не знаю, если это возможно, с фоном или нет, но вы можете добиться этого, помещая ImageView внутри макета кадра или относительного расположения как с шириной и height match parent scaleType устанавливается в fitXY.

+0

Спасибо, но это сделает изображение меньшим (не в размере, но когда вы его просмотрите). Я не хочу устанавливать 'match_parent'. Я хочу прокрутить изображение по ширине и высоте 1500x1500. – ThisGuy