Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 19 дек 2018, 17:32

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 192 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10  След.
Автор Сообщение
СообщениеДобавлено: 27 май 2014, 22:15 
Аватар пользователя

Зарегистрирован: 02 май 2014, 13:13
Сообщений: 45
Откуда: Уфа
Благодарил (а): 0 раз.
Поблагодарили: 2 раз.
Вот такое меню как лучше реализовывать?

Изображение

_________________
Русскоязычный чат Android разработчиков https://gitter.im/rus-speaking/android


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 09 июн 2014, 14:46 

Зарегистрирован: 29 май 2014, 12:52
Сообщений: 3
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
tvv_yar, спасибо, твой пост помог. Удалил сначала фрагмент, но не показывались пункты меню со второй группы. После замены библиотеки android.support.v7.app.ActionBarActivity на android.app.Activity и наследования MainActivity от Activity все заработало как надо.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 июн 2014, 11:44 

Зарегистрирован: 18 июн 2014, 11:29
Сообщений: 4
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Подскажите пожалуйста, пробую создать боковое меню в своем приложении на основании примера: http://developer.android.com/training/i ... rawer.html.

<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />

<ListView android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#111"/>
</android.support.v4.widget.DrawerLayout>

В данном примере используется ListView, а возможно применить ExpandableList и как? Заранее спасибо.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 18 июн 2014, 12:06 

Зарегистрирован: 18 июн 2014, 11:29
Сообщений: 4
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Разобрался!!! Необходимо вместо android:choiceMode="singleChoice" использовать android:choiceMode="multipleChoice"


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Баг с меню
СообщениеДобавлено: 21 июн 2014, 21:30 

Зарегистрирован: 21 июн 2014, 21:19
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Небольшой баг. При запуске на эмуляторе 4.0.3 метод onPrepareOptionsMenu вызывается при старте приложения, а не при первом вызове меню. При повторном и следующих вызовах меню метод onPrepareOptionsMenu вызывается при показе меню. Воспроизводим баг:
- запускаем приложение.
- cтавим галочку на расширеный показ.
- вызываем меню.
- видим сокращенное меню. (((
Похоже, что при запуске приложения меню показывается и скрывается, чтобы исключить фризы при первом показе меню. Кто сталкивался с подобным, как сделать работу примера корректной?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Урок 14. Решение
СообщениеДобавлено: 28 июн 2014, 16:57 

Зарегистрирован: 21 июн 2014, 21:19
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Нашел решение проблемы.
http://stackoverflow.com/questions/1288 ... r-the-firs


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 16:47 

Зарегистрирован: 26 июл 2014, 20:19
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Помогите плз. Код был скопирован из урока, что ни делай - в меню всегда вылазит 6 элементов (независимо от состояния чекбокса) и даже от версии AVD. Причем и в варианте описания меню в MineActivity, и в варианте с mymenu.xml.
Перечитал всю ветку, вроде что понял то проверил, косяков найти не могу...
На всякий случай вот код:
Код: [ Загрузить ] [ Скрыть ]
  1. package com.example.pastor.p0141_menuadv; 
  2.  
  3. import android.support.v7.app.ActionBarActivity; 
  4. import android.os.Bundle; 
  5. import android.view.Menu; 
  6. import android.view.MenuItem; 
  7. import android.widget.TextView; 
  8. import android.widget.CheckBox; 
  9.  
  10. public class MineActivity extends ActionBarActivity { 
  11.  
  12.     // Элементы экрана 
  13.     TextView tv; 
  14.     CheckBox chb; 
  15.  
  16.  
  17.     @Override 
  18.     protected void onCreate(Bundle savedInstanceState) { 
  19.         super.onCreate(savedInstanceState); 
  20.         setContentView(R.layout.mine); 
  21.  
  22.         // находим эдементы 
  23.         tv = (TextView) findViewById(R.id.textView); 
  24.         chb = (CheckBox) findViewById(R.id.chbExtMenu); 
  25.     } 
  26.  
  27.     // создание меню 
  28.     @Override 
  29.     public boolean onCreateOptionsMenu(Menu menu) { 
  30.         getMenuInflater().inflate(R.menu.mymenu, menu); 
  31.         return super.onCreateOptionsMenu(menu); 
  32.     } 
  33.  
  34.     // обновление меню 
  35.     @Override 
  36.     public boolean onPrepareOptionsMenu(Menu menu) { 
  37.         // TODO Auto-generated method stub 
  38.         // пункты меню с ID группы = 1 видны, если в CheckBox стоит галка 
  39.         menu.setGroupVisible(1, chb.isChecked()); 
  40.         return super.onPrepareOptionsMenu(menu); 
  41.     } 
  42.  
  43.     // обработка нажатий 
  44.     @Override 
  45.     public boolean onOptionsItemSelected(MenuItem item) { 
  46.         // TODO Auto-generated method stub 
  47.         StringBuilder sb = new StringBuilder(); 
  48.  
  49.         // Выведем в TextView информацию о нажатом пункте меню 
  50.         sb.append("Item Menu"); 
  51.         sb.append("\r\n groupId: " + String.valueOf(item.getGroupId())); 
  52.         sb.append("\r\n itemId: " + String.valueOf(item.getItemId())); 
  53.         sb.append("\r\n order: " + String.valueOf(item.getOrder())); 
  54.         sb.append("\r\n title: " + item.getTitle()); 
  55.         tv.setText(sb.toString()); 
  56.  
  57.         return super.onOptionsItemSelected(item); 
  58.     } 
  59. /*    @Override 
  60.        public boolean onCreateOptionsMenu(Menu menu) { 
  61.         // Inflate the menu; this adds items to the action bar if it is present. 
  62.         getMenuInflater().inflate(R.menu.mine, menu); 
  63.         return true; 
  64.     } 
  65.  
  66.     @Override 
  67.     public boolean onOptionsItemSelected(MenuItem item) { 
  68.         // Handle action bar item clicks here. The action bar will 
  69.         // automatically handle clicks on the Home/Up button, so long 
  70.         // as you specify a parent activity in AndroidManifest.xml. 
  71.         int id = item.getItemId(); 
  72.         if (id == R.id.action_settings) { 
  73.             return true; 
  74.         } 
  75.         return super.onOptionsItemSelected(item); 
  76.     }*/ 

Пламенное спасибо!


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 17:09 

Зарегистрирован: 06 ноя 2013, 08:59
Сообщений: 114
Благодарил (а): 0 раз.
Поблагодарили: 25 раз.
Цитата:
Помогите плз.

onCreateOptionsMenu
PS Еще пару слов, найдите его в уроке и сравните


Последний раз редактировалось Donart 05 авг 2014, 17:28, всего редактировалось 1 раз.

Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 17:15 

Зарегистрирован: 26 июл 2014, 20:19
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Donart писал(а):
Цитата:
Помогите плз.

onCreateOptionsMenu


А еще пару слов?:) Имя метода написано без ошибок, AndroidStudio ни на что не ругается, т.е. метод в импортах доступен...


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 17:59 

Зарегистрирован: 26 июл 2014, 20:19
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Donart писал(а):
найдите его в уроке и сравните

Это код для варианта с mymenu.xml (2-я часть урока).
onCreateOptionsMenu - взят из урока. Хотя счас скопипастил его еще раз, конечно не помогло: в меню всегда 6 пунктов.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 18:26 

Зарегистрирован: 06 ноя 2013, 08:59
Сообщений: 114
Благодарил (а): 0 раз.
Поблагодарили: 25 раз.
Polundra писал(а):
Donart писал(а):
найдите его в уроке и сравните

Это код для варианта с mymenu.xml (2-я часть урока).

Про какой код идет речь. Вы что издеваетесь :|
Программное меню(первая часть урока)
Код: [ Загрузить ] [ Скрыть ]
Using Java(TM) 2 Platform Standard Edition 5.0 Syntax Highlighting
  1. @Override
  2.     public boolean onCreateOptionsMenu(Menu menu) {
  3.       // TODO Auto-generated method stub
  4.       // добавляем пункты меню
  5.       menu.add(0, 1, 0, "add");
  6.       menu.add(0, 2, 0, "edit");
  7.       menu.add(0, 3, 3, "delete");
  8.       menu.add(1, 4, 1, "copy");
  9.       menu.add(1, 5, 2, "paste");
  10.       menu.add(1, 6, 4, "exit");
  11.      
  12.       return super.onCreateOptionsMenu(menu);
  13.     }

XML меню(вторая часть урока)
Цитата:
Если захотите скрыть группу, выполняете тот же метод setGroupVisible и передаете туда R.id.group1 в качестве ID группы.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 05 авг 2014, 18:54 

Зарегистрирован: 26 июл 2014, 20:19
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Ответ нашелся здесь: viewtopic.php?f=3&p=29395#p29395
Все заработало, AndroidStudio по дефолту наследовало не тот класс (ActionBarActivity)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 09 авг 2014, 19:15 

Зарегистрирован: 09 авг 2014, 19:09
Сообщений: 4
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
вопрос не совсем по теме урока.
пишу все уроки без копипаста и столкнулся с такой проблемкой, когда начинаю писать r.id. этот глупый эклипс меняет набранный мною код на android.r.id. там естесно нет элементов из файла r.java, + добавляется в импорт import android.R; после чего все набранные до этого айдишники выделяются ошибкой.
как это вылечить? надоело удалять import android.R; да и каждый раз удалять android. перед R тоже както не очень приятно.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 19 авг 2014, 14:48 

Зарегистрирован: 19 авг 2014, 14:43
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
скажите пожайлуста, с помощью меню можно изменить настройки одного из методов программы?!
Ну например MediaRecorder пишет в программе звук с микрофона, нужну предоставить возможность выбора записи разговора...
Как связать пункт меню с активацией источнока звука?
Заранее благодарен.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 20 авг 2014, 12:10 

Зарегистрирован: 19 авг 2014, 14:43
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
спасибо за совет))
дельный......


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 20 авг 2014, 12:40 
Аватар пользователя

Зарегистрирован: 20 окт 2012, 12:01
Сообщений: 4201
Благодарил (а): 68 раз.
Поблагодарили: 467 раз.
Игорь, какой вопрос - такой ответ.

_________________
R.id.team

NullPointerException - что делать???
http://forum.startandroid.ru/viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
http://forum.startandroid.ru/viewtopic.php?f=60&t=3198


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 20 авг 2014, 19:04 

Зарегистрирован: 19 авг 2014, 14:43
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Вопрос вроде бы прост ( для меня так точно)) )....
Суть его заключается в следующем: есть приложение "диктофон", в нем есть метод startRecord(), в этом методе активируется микрофон, для записи звука: mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
Есть контекстное меню....
Так вот: как связать пункт в меню с методом активизации микрофона, и из меню изменить запись звука на: mediaRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL);
Ну не говорю о выборе папки для зиписа файлов.....


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 20 ноя 2014, 10:20 

Зарегистрирован: 22 окт 2014, 11:05
Сообщений: 2
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Написал проект. Запустил на телефоне, но меню не отображается. Даже нет кнопки открытия меню.
вот код:
public boolean onCreateOptionsMenu(Menu m){
getMenuInflater().inflate(R.menu.menu, m);
return super.onCreateOptionsMenu(m);
}
public boolean onOptionsItemSelected(MenuItem i){
switch (i.getItemId()){
case CLEAN_ID:
tvRes.setText("");
etVal1.setHint("Value 1");
etVal2.setHint("Value 2");
break;
case QUIT_ID:
finish();
break;
}
return super.onOptionsItemSelected(i);
}


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 26 фев 2015, 16:35 

Зарегистрирован: 26 фев 2015, 16:20
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Только начинаю изучать Android, но имею некоторый опыт программирования на Java, и заметил в коде такой момент вот здесь:

Код: [ Загрузить ] [ Скрыть ]
  1. StringBuilder sb = new StringBuilder(); 
  2.  
  3.       // Выведем в TextView информацию о нажатом пункте меню  
  4.       sb.append("Item Menu"); 
  5.       sb.append("\r\n groupId: " + String.valueOf(item.getGroupId())); 
  6.       sb.append("\r\n itemId: " + String.valueOf(item.getItemId())); 
  7.       sb.append("\r\n order: " + String.valueOf(item.getOrder())); 
  8.       sb.append("\r\n title: " + item.getTitle()); 
  9.       tv.setText(sb.toString()); 


Создаётся StringBuilder и используется конкатенация строк через "+", что создаёт новый StringBuilder, который соединяет строки и затем выполняет toString и так 4 раза.
Корректнее, на мой взгляд, с точки зрения быстродействия и использования памяти, будет применить методы уже созданного StringBuilder'а и избежать ненужных телодвижений:
Код: [ Загрузить ] [ Скрыть ]
  1. StringBuilder sb = new StringBuilder(); 
  2.  
  3.         // Выведем в TextView информацию о нажатом пункте меню 
  4.         sb.append("Item Menu"); 
  5.         sb.append("\r\n groupId: ").append(String.valueOf(item.getGroupId())); 
  6.         sb.append("\r\n itemId: ").append(String.valueOf(item.getItemId())); 
  7.         sb.append("\r\n order: ").append(String.valueOf(item.getOrder())); 
  8.         sb.append("\r\n title: ").append(item.getTitle()); 
  9.         textV.setText(sb.toString()); 


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 26 фев 2015, 19:37 
Аватар пользователя

Зарегистрирован: 20 окт 2012, 12:01
Сообщений: 4201
Благодарил (а): 68 раз.
Поблагодарили: 467 раз.
На самом деле все это бесполезно. Компилятор и иак все плюсы переводит к StringBuilder- у

_________________
R.id.team

NullPointerException - что делать???
http://forum.startandroid.ru/viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
http://forum.startandroid.ru/viewtopic.php?f=60&t=3198


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 192 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10  След.

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB