2013-03-02 36 views
10

Tôi đang sử dụng mã bên dưới để đặt hình ảnh trên một số lần xem tiện ích con bằng cách sử dụng remoteview bây giờ tôi muốn đặt chiều cao và chiều rộng thành thời gian chạy hình ảnh.Đặt chiều rộng và chiều cao của ImageView theo cách lập trình trên tiện ích

if (appWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID) { 
    AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(WidgetActivity1_1.this); 
    RemoteViews remoteViews = new RemoteViews(WidgetActivity1_1.this.getPackageName(), R.layout.widget_layout1_1); 
    Intent configIntent = new Intent(WidgetActivity1_1.this,UpdateWidgetService.class); 
    configIntent.putExtra("Appid", appWidgetId); 
    PendingIntent configPendingIntent = PendingIntent.getService(WidgetActivity1_1.this, appWidgetId, configIntent, 0); 
    remoteViews.setImageViewResource(R.id.imgviewGrow, R.drawable.flower1); 
} 

Trả lời

15

Bạn có thể đặt Params Layout progrematiclly theo cách này:

myImageView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT, 
ViewGroup.LayoutParams.WRAP_CONTENT)); 

hoặc đặt một số thay thế.

hình ảnh kích thước thao tác đôi khi có thể khó khăn và nó được đề nghị đầu tiên được params bố trí hình ảnh, thay đổi nó và đặt nó trở lại:

android.view.ViewGroup.LayoutParams layoutParams = myImageView.getLayoutParams(); 
layoutParams.width = 30; 
layoutParams.height = 30; 
myImageView.setLayoutParams(layoutParams); 

và nếu bạn vẫn còn có một vấn đề để thay đổi nó kích thước cố gắng để đặt nó bên trong một LinearLayout và thao tác kích thước IMAGExem sử dụng params bố trí:

LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(30, 30); 
myImageView.setLayoutParams(layoutParams); 

cập nhật: các bài viết sau đây sẽ giúp bạn với những gì bạn cần:

RemoteViews setLayoutParams?

http://pastebin.com/As3L8xWu

+0

nhờ trả lời nhưng nó sẽ thay đổi chiều rộng ImageView heigth tôi đang sử dụng ImageView nhưng trong widget vì vậy chúng tôi không thể trực tiếp truy cập vào ImageView chúng ta phải sử dụng remoteview như u có thể thấy trong bài viết của tôi tôi đã thiết lập thời gian chạy hình ảnh bây giờ trong bằng cách đó tôi muốn thiết lập chiều rộng chiều cao trong remotview. – PankajAndroid

+0

xem câu trả lời được cập nhật. –

+0

u r seeting bố trí imageview trong khi trong widget bạn không thể thiết lập nó, bạn phải có người dùng remotivew và remotview donsnt có một phương thức setLayoutPrarms. – PankajAndroid

-3

hi thử các dòng để thiết lập chiều rộng và chiều cao ImageView

image_view.getLayoutParams().height = 20; 

image_view.getLayoutParams().width = 100; 
+0

xin lỗi yar xin vui lòng đọc bài viết của tôi đầu tiên tôi sẽ thiết lập remoteview kích thước imageview không chỉ bố trí imageivew xin đọc nó. – PankajAndroid

+0

kiểm tra tài liệu này về chế độ xem Từ xa 'http: // developer.android.com/reference/android/widget/RemoteViews.html # addView% 28int,% 20android.widget.RemoteViews% 29' – androidgeek

-4

này nên làm việc!

image.getLayoutParams().height = 90;

+0

câu trả lời của bạn thêm vào ví dụ một từ androidgeek? – joaquin

Các vấn đề liên quan