2011-08-09 1 views
0

У меня есть интерактивный относительный макет с текстовыми изображениями, в котором я хочу создать схему вокруг, чтобы пользователи могли понять, что она доступна, но я не уверен, как это сделать. Любая помощь будет оценена по достоинству.Скользящий относительный макет

EDIT: Я уже реализовал кликабельность, то есть я уже могу щелкнуть по нему и заставить его что-то сделать. Я просто хочу нарисовать окно вокруг самого макета, чтобы указать, что он доступен для клика.

ответ

0

View имеет имя атрибута xml android: onClick = "methodName". LinearLayout, RelativeLayout inherit View. Вы можете установить имя метода для этого атрибута. Ваш метод должен иметь этот формат:

public void methodName(View v){ 

} 

Метод действия должен быть общедоступным, недействительным и иметь тип параметра Вид. Поместите этот метод в свой контекст (Activity). Удачи :)

+0

Извините, возможно, я должен был быть более ясным. Я уже реализовал кликабельность, я просто хочу нарисовать схему (например, поле) вокруг самой компоновки, чтобы она «отображалась» как кнопка. – confused

3

Если вы просто хотите нарисовать рамку вокруг RelativeLayout, вы можете сделать это очень просто.

  1. Поместите RelativeLayout внутри FrameLayout.
  2. Установите фон FrameLayout как любой цвет, который вы хотите.
  3. Установите отступы на FrameLayout до нужной ширины для коробки

Так что ваш XML будет выглядеть следующим образом:

<FrameLayout 
android:id="@+id/colored_frame" 
android:layout_height="wrap_content" 
android:layout_width="fill_parent" 
android:padding="10dip" 
android:background="#FF0055CC"> 

    <RelativeLayout 
    android:id="@+id/your_relative_layout" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent" 
    android:padding="10dp" 
    android:background="#FF000000"> 

     <TextView 
     android:id="@+id/some_text" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="Relative Layout" 
     android:textSize="40sp" 
     /> 

     <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/some_text" 
     android:text="..." 
     android:textSize="30sp" 
     /> 


    </RelativeLayout> 

</FrameeLayout> 

Теперь у вас есть окно (в данном случае голубой) вокруг относительного макете

RelativeLayout with Frame

Это то, что лет u искали?