2016-03-10 5 views
-1

У меня есть Relative Layout, как показано нижеПоместите макет в целях изображений

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="30dp" 
android:background="@drawable/follow_icon_circle"> 
<ImageView 
    android:id="@+id/plus" 
    android:layout_width="13dp" 
    android:layout_height="13dp" 
    android:src="@mipmap/follow_button_plus_icon" 
    android:layout_centerVertical="true" 
    android:layout_marginLeft="10dp"/> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="12dp" 
    android:text="@string/txt_follow_button" 
    android:layout_alignTop="@id/plus" 
    android:layout_toRightOf="@id/plus" 
    android:layout_marginRight="8dp" 
    android:layout_marginLeft="5dp" 
    android:textColor="@color/tab_menu_selected_color"/> 
</RelativeLayout> 

Я хочу поставить эту схему в целях изображения. Пример: imageView1.setImageResource (R.layout.RelativeLayout);

Но он не работает. Как я могу поместить это изображение в мое изображение?

+1

его не представляется возможным, ImageViews являются для показа изображений, попробуйте использовать LinearLayout или RelativeLayout, он поддерживает вложенность –

+0

'ImageView' не распространяется' ViewGroup' ... также 'setImageResource' принимает' R.drawable', ** not ** a 'R.layout' –

+0

Если вы хотите показать ** изображение ** элементов, вам нужно нарисовать их, используя метод' draw' класса 'android.view.View' на холсте, созданный из «Растровое изображение» и использовать его как содержимое в «ImageView». – nekavally

ответ

1

Назовите идентификатор макета, который хотите получить как изображение.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="30dp" 
android:id="@+id/relative" 
android:background="@drawable/follow_icon_circle"> 

И вам нужно создать растровое изображение, как показано ниже ..

RelativeLayout relativeLayout = (RelativeLayout)findViewById(R.id.relative); 
Bitmap bitmap = Bitmap.createBitmap(relativeLayout.getWidth(), relativeLayout.getHeight(), Bitmap.Config.ARGB_8888); 
Canvas canvas = new Canvas(bitmap); 
relativeLayout.draw(canvas); 

И установить его в ImageView.

imageView1.setImageBitmap(bitmap);