Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
motoroller
2 / 2 / 1
Регистрация: 01.05.2012
Сообщений: 116
#1

Как сделать RelativeLayout поверх другого? - Программирование Android

16.06.2015, 04:53. Просмотров 904. Ответов 1
Метки нет (Все метки)

Есть основной фрагмент:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?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="wrap_content">
 
<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mapView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/company_details" />
 
 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/company_details"
        android:background="@color/details_company">
 
        <!-- Image -->
        <com.android.volley.toolbox.NetworkImageView
            android:id="@+id/company_image"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentLeft="true" />
 
        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp">
 
            <!-- Title -->
            <TextView
                android:id="@+id/company_title"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="80dp" />
 
            <!-- Address -->
            <TextView
                android:id="@+id/company_address"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                style="@style/Country"
                android:layout_below="@id/company_title"
                android:layout_marginLeft="80dp" />
 
            <!-- Phone -->
            <TextView
                android:id="@+id/company_phone"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                style="@style/Country"
                android:textSize="30dp"
                android:layout_below="@id/company_address"
                android:layout_marginLeft="80dp" />
 
        </RelativeLayout>
 
    </RelativeLayout>
 
</RelativeLayout>
Он содержит два основных элемента
это карта и RelativeLayout. Последний элемент мы скрываем.
Так овт при перемещении карты или клику по элементу карты, мне надо чтобы RelativeLayout (company_details).
Собственно я этого добился:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// При перемещении карты
                                    googleMap.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
                                        @Override
                                        public void onCameraChange(CameraPosition camera) {
                                            RelativeLayout Details = (RelativeLayout) rootView.findViewById(R.id.company_details);
 
                                            if(Details.getVisibility() == View.VISIBLE && showDetails == false) {
                                                TranslateAnimation slide = new TranslateAnimation(0, 0, 0, Details.getHeight());
                                                slide.setDuration(500);
                                                Details.setVisibility(View.GONE);
 
                                                Log.d("My prog", "hide");
                                            } else if(Details.getVisibility() == View.GONE && showDetails == true) {
                                                TranslateAnimation slide = new TranslateAnimation(0, 0, Details.getHeight(), 0);
                                                slide.setDuration(500);
                                                //slide.setFillAfter(true);
                                                Details.startAnimation(slide);
                                                Details.setVisibility(View.VISIBLE);
                                                Log.d("My prog", "show");
                                            } else if(Details.getVisibility() == View.VISIBLE && showDetails == true) {
                                                showDetails = false;
                                                Log.d("My prog", "hide after second choice");
                                            }
 
                                            showDetails = false;
                                        }
                                    });
Но проблема в том, что карта у меня "прыгает" когда скрывается или появляется company_details, то есть у меня слой не поверх карты, скажите как можно сделать, чтобы company_details появлялся именно поверх карты, не меняя ее размеров?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2015, 04:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как сделать RelativeLayout поверх другого? (Программирование Android):

Сделать RelativeLayout во весь экран устройства - Программирование Android
У меня есть разметка активити activity_main.xml &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; ...

Фрагмент поверх другого - Программирование Android
Меняю фрагменты след. кодом: public void fragmentChange(int id, boolean addToBackStack){ FragmentTransaction fTrans =...

Меню, которое выезжает поверх другого - Программирование Android
Как сделать такое меню которое выезжает поверх другого? Пример картинка

Как сделать вьюшку, чтобы она была поверх любых приложений? - Программирование Android
Например, как это сделано в ГеймХацкере. Нигде не могу нарыть. Говорят про AlertDialog, но это совсем не то, что мне нужно..

Как разместить элемент над центром в RelativeLayout? - Программирование Android
Как разместить элемент над/под центром в RelativeLayout? А также слева/справа от центра?

Как прикрепить програмно кнопку к другому элементу в RelativeLayout - Программирование Android
Как прикрепить програмно кнопку к другому елементу в RelativeLayout ?

1
Pablito
2478 / 1962 / 611
Регистрация: 12.05.2014
Сообщений: 6,870
Завершенные тесты: 1
16.06.2015, 09:00 #2
Как сделать RelativeLayout поверх другого?
в это трудно поверить, но эти лаяуты нужно поместить внутрь FrameLayout и тогда они будут как-бы на разных слоях
(в код и разметку не вникал и не хочу)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2015, 09:00
Привет! Вот еще темы с ответами:

Отображение активити поверх другого активити - Программирование Android
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по нажатию кнопки настройки, нужно открыть активити с настройками,...

RelativeLayout и Bitmap - Программирование Android
Можно ли поставить на задний фон RelativeLayout Bitmap. Или преобразовать Bitmap в Drawable? P.S. Именно Bitmap, а не BitmapDrawable/

LinearLayout vs RelativeLayout - Программирование Android
этот LinearLayout вообщевозможно переделать на RelativeLayout??? &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout ...

RelativeLayout + Button - Программирование Android
Народ как лучше делать разметку в xml Есть RelativeLayout (с картинкой в background) и на нем надо расположить Button, в определенном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru