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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.93
Zilon
5 / 5 / 0
Регистрация: 05.11.2010
Сообщений: 60
#1

How to set view position on parent (Android) - Программирование Android

17.01.2011, 15:39. Просмотров 1956. Ответов 0
Метки нет (Все метки)

Hello to everybody.
Here is my problem:
In my android application I need to use custom menu. In xml I make menu layout (RelativLayout)
and inflate it on application start, then add it to parent layout, which was set by setContentView().
So I have something like this:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
   private void initMenu()
    {
        LayoutInflater inflanter = getLayoutInflater(); 
        menu = (RelativeLayout) inflanter.inflate(R.layout.menu, null, false);
        
        LayoutParams param = new LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, 
            ViewGroup.LayoutParams.WRAP_CONTENT);
        
        menuParent.addView(menu, param);    
        
        hideMenuAnim = AnimationUtils.loadAnimation(this, R.anim.menu_hide);
        showMenuAnim = AnimationUtils.loadAnimation(this, R.anim.menu_show);
    }
But I can't to set position for menu layout (using menu.layout(l, t, r, b).
menu.layout() don't do anything during initialization. I try to call layout() in
protected void onStart(), protected void onResume(), public void onChildViewAdded(View parent, View child) methods.
I try to create my custom class "class MenuLayout extends RelativeLayout{ ..." and set position in onLayout method:
Java
1
2
3
4
5
    protected void onLayout(boolean changed, int l, int t, int r, int b) {
        Rect posRect = new Rect();
        callback.getPosition(posRect);
        super.onLayout(changed, posRect.left, posRect.top, posRect.right, posRect.bottom);
        }
But position of menu don't change.
menu.layout() begin to work later when, as I understand, parrent view is completely initialized because
next code works normally (position is changed):
Java
1
2
3
4
5
6
7
8
    public boolean onKeyDown (int keyCode, KeyEvent event)
    {
        if(KeyEvent.KEYCODE_DPAD_UP == keyCode)
        {
                menu.layout(menuPosRect.left, menuTopPos, menuPosRect.right, menuBottomPos);
        }
    ...
    }
PS: layout_graviti and graviti works very funny.., as always ))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2011, 15:39
Я подобрал для вас темы с готовыми решениями и ответами на вопрос How to set view position on parent (Android) (Программирование Android):

RecyclerView| LongClick| set(View.VISIBLE) на выбранном item? - Программирование Android
Добрый день! подскажите пожалуйста как показать вьюшку только в той позиции item'а на которой сделали LongClick ? вьюшка...

android Listview Center position - Программирование Android
здравствуйте У меня есть XML-файл с разобрать и показать элементы в ListView. ListView включены изображения и текст (к примеру, Эминем...

Android slide view - Программирование Android
Всем привет, недавно программирую под андройд, хочу сделать слайд менюшку в приложении. Использую библиотеку SlidingMenu, менюшку готовлю...

Expandable List View Android - Программирование Android
Создал кастомный выдвигающийся список, но при запуске приложения адаптер списка не вызывает метод getChildView и элементы группы не...

Web view Android studio - Программирование Android
Как загрузить html страницу в webview в android studio? Где найти эту папку android_asset? mWebView = (WebView)...

MVP для Android игры - реализация View - Программирование Android
Добрый вечер! Делаю архитектуру для небольшой игрушки на Android, но возникли вопросы. Как говорится, на 7 раз игру написать в одной...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2011, 15:39
Привет! Вот еще темы с ответами:

ClassNotFoundException. android.view.fragment. как лечить? - Программирование Android
Добрый день всем. Есть очень банальная проблема. ClassNotFoundException лейаут popup.xml <?xml version="1.0" encoding="utf-8"?> ...

Android.support.v4.view.ViewPager одним xml+java файлом - Программирование Android
Пробую изучить примеры android.support.v4.view.ViewPager Нужно сделать (вместо длинющего активити с кучей кнопок) 3 "закладки"....

Вызов $parent.$parent.Mymethod() из двух ng-repeat соотвено в ng-mouseenter - AngularJS
Привет, есть два ng-repeat <div ng-repeat='a in aa'> <div ng-repeat='b in bb'> <div...

Создать вьюху через интерфейс Management Studio 2008 R2: Save View: Object reference not set to an - SQL Server
Пытаюсь создать вьюху через интерфейс Management Studio 2008 R2 (см. скриншот). Пр исохранении выскакивает ошибка. В чем может быть...


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

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

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