Сделать фон приложения

Интерфейс, диалоги, темы, стили, меню
Закрыто
tolyan
Сообщения: 10
Зарегистрирован: 15 фев 2014, 00:38

Сделать фон приложения

Сообщение tolyan » 14 мар 2014, 07:23

Скажите пожалуйста, как сделать фон програми.Я добавляю картинку в компонент ImageView
дальше я хочу сделать кнопку с изображением, для этого загружаю в компонент ImageButton картинку.Пры запуска невидно ImageButton, когда пробовал компонент ImageButton ставлять внутрь ImageView[1] тогда программа компилируется, но закрывается по какой-то ошибке.Подскажите пожалуйста, что можно сделать . Я недавно начал писать под андроид поэтому не судите слишком, спасибо!

пс.
[1]

Код: Выделить всё

   <ImageView
       android:id="@+id/image1"
       android:layout_width="wrap_content"
       android:layout_height="match_parent"
       android:src="@drawable/fon"> 

        <ImageButton
           android:id="@+id/imageButton1"
           android:layout_width="256dp"
           android:layout_height="212dp"
           android:layout_x="134dp"
           android:layout_y="487dp"
           android:src="@drawable/back" />
          
     </ImageView>


Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Сделать фон приложения

Сообщение rezak90 » 14 мар 2014, 09:34

Потому что так нельзя делать, нельзя одно вью вставить в другое. Нужна разметка-контейнер (любой наследник от ViewGroup) в котором будет ImageView и ImageButton.
R.id.team
Политика на форуме запрещена

tolyan
Сообщения: 10
Зарегистрирован: 15 фев 2014, 00:38

Re: Сделать фон приложения

Сообщение tolyan » 14 мар 2014, 18:20

Извините, вот скриншот и полный код
заработало, правда не знаю уместно использовать RelativeLayout, возможно это нелучший вариант, но главное что работает.
Спасибо

Код: Выделить всё

<?xml version="1.0" encoding = "utf-8" ?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:orientation="vertical" >
    
   <ImageView
       android:id="@+id/image1"
       android:layout_width="wrap_content"
       android:layout_height="match_parent"
       android:src="@drawable/fon"
        
        />

           <ImageButton
               android:id="@+id/imageButton1"
               android:layout_width="256dp"
               android:layout_height="212dp"
               android:layout_alignParentBottom="true"
               android:layout_centerHorizontal="true"
               android:layout_marginBottom="33dp"
               android:src="@drawable/back" />
   
</RelativeLayout>
Вложения
безу.png
безу.png (722.32 КБ) 7688 просмотров

Аватара пользователя
vornic
Сообщения: 10
Зарегистрирован: 13 мар 2014, 12:34
Откуда: Moldova
Контактная информация:

Re: Сделать фон приложения

Сообщение vornic » 14 мар 2014, 20:13

Если я правильно вас понял, вы хотите задать фоновую картинку для своего RelativeLayout?
я как то тоже задавался таким вопросом и нашел вот такое решение:

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.bgnormal); // берем картинку из ресурса
BitmapDrawable bitmapDrawable = new BitmapDrawable(bmp);
bitmapDrawable.setTileModeXY(android.graphics.Shader.TileMode.REPEAT, android.graphics.Shader.TileMode.REPEAT); // гшоворим обьекту как рисовать (у меня это повторяющийся фон)
layout.setBackgroundDrawable(bitmapDrawable); // задаём фон нашему лэйауту

Надеюсь что это то что вам нужно.
С Уважением, Владимир Ворническу.

tolyan
Сообщения: 10
Зарегистрирован: 15 фев 2014, 00:38

Re: Сделать фон приложения

Сообщение tolyan » 14 мар 2014, 21:54

Скажите пожалуйста, как сделать, чтобы фон не повторялся

siberprogs
Сообщения: 93
Зарегистрирован: 05 мар 2014, 06:20

Re: Сделать фон приложения

Сообщение siberprogs » 15 мар 2014, 05:08

tolyan писал(а):Извините, вот скриншот и полный код
заработало, правда не знаю уместно использовать RelativeLayout, возможно это нелучший вариант, но главное что работает.
Спасибо
Да без разницы какой Layout.
У любого Layout есть параметр - background.
[syntax=java]<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/fon" >
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="256dp"
android:layout_height="212dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="33dp"
android:src="@drawable/back" />
</RelativeLayout>[/syntax]
ImageView для этого не нужен.
А если нужно чтобы картинка не растягивалась на весь экран - внутрь одного layout можно вставить другой, и ему задать фон и нужные размеры.
У вас разве графический дизайнер не работает?
Linux Fedora RFRemix + Intellij Idea

tolyan
Сообщения: 10
Зарегистрирован: 15 фев 2014, 00:38

Re: Сделать фон приложения

Сообщение tolyan » 15 мар 2014, 19:07

я именно так и сделал
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/fon" >

всем спасибо

Закрыто