Урок 8. Работаем с элементами экрана из кода

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 20 окт 2012, 17:54

Olivka
увы, но это такая среда разработки, придётся мучатся =)
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Foenix » 20 окт 2012, 23:04

rezak90 писал(а):Olivka
увы, но это такая среда разработки, придётся мучиться =)
Я только что поняла почему отдельные неполадки.. например, исчезают теги и т.д. :cry:
я пользуюсь автоматически ctrl+C,V, это не срабатывает (особенно копирование в окошках редактирования!), автоматом вставляю куда мне нужно ctrl+V, оно не срабатывает, я заново жму, но все равно ничего, но оказывается оно вставляется не в нужную ячеку, а в другое окошко под ним!! а там всякая белиберда вставляется (то, что я скопировала некоторое время назад в другом окошке), потом я жму пробел, и это может затереть некоторые символы, которых не видно.
Во дела!
R.id.team

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

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 21 окт 2012, 01:04

да есть и такой косяк, по этому всё лучше делать руками а не "в окошки".
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Foenix » 21 окт 2012, 09:07

С этим могу поспорить, жаль, тема не та ;)
R.id.team

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

AndreyI
Сообщения: 372
Зарегистрирован: 14 май 2012, 16:18

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение AndreyI » 21 окт 2012, 14:36

Olivka писал(а): Я только что поняла почему отдельные неполадки.. например, исчезают теги и т.д. :cry:
я пользуюсь автоматически ctrl+C,V, это не срабатывает (особенно копирование в окошках редактирования!), автоматом вставляю куда мне нужно ctrl+V, оно не срабатывает, я заново жму, но все равно ничего, но оказывается оно вставляется не в нужную ячеку, а в другое окошко под ним!! а там всякая белиберда вставляется (то, что я скопировала некоторое время назад в другом окошке), потом я жму пробел, и это может затереть некоторые символы, которых не видно.
Во дела!
ctrl-ins/shift-ins тоже не работает?

Не понимаю я разработчиков, выставили самый глючный релиз (ADT 20) и не обновляют, видимо хотят допилить как следует 21-ю, я пользуюсь её preview-версиями, уже вышел 9-й релиз-кандидат, глюков действительно стало меньше.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Foenix » 21 окт 2012, 16:20

AndreyI писал(а):
ctrl-ins/shift-ins тоже не работает?
Возможно и работают, работаешь на автомате, усилий стоило переучиться на С и V (под другую среду, где ctrl-ins/shift-ins не работали), обратно просто уже сил нет привыкать. Кстати, в коде работает это сочетание (по правой кнопке мыши обозначены сокращения), а в окошках даже правой мышей просто копировать, вставить - без коротких клавиш.
R.id.team

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

Batisto4ka
Сообщения: 1
Зарегистрирован: 06 ноя 2012, 16:41

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Batisto4ka » 06 дек 2012, 16:15

Подскажите, можно ли создать массив кнопок или стандартных элементов? К примеру так:

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

ImageButton imgbtn[];

imgbtn=ImageButton new[10];
И вот тут непонятно, как бы так присвоить элементам массива свой id?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Foenix » 06 дек 2012, 17:12

Можно создать класс, а там - свою нумерацию элементов.. например

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

public class myClass {
	int id;
	String name;
	myClass(int _id, String _name) {
		id = _id;
		name = _name;
	}
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}
ну и так далее.
Только вместо моих элементов, у вас будут типы button...
R.id.team

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

asolovey
Сообщения: 11
Зарегистрирован: 12 дек 2012, 00:58

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение asolovey » 15 дек 2012, 21:21

Здравствуйте,

Сделал все как описано в уроке, но во время запуска приложения на эмуляторе постоянно появляется следующая ошибка:
Изображение

В Eclipse в Graphical Layout тоже изменения, которые производились в MainActivity над элементами не отображаются. В чем может быть проблема?

Спасибо!

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 15 дек 2012, 23:42

нужно лог ошибок предоставлять, а это стандартная ошибка для всех приложений пользователю и смысла разработчику она не несёт
R.id.team
Политика на форуме запрещена

asolovey
Сообщения: 11
Зарегистрирован: 12 дек 2012, 00:58

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение asolovey » 16 дек 2012, 21:54

С проблемой уже разобрался сам, получилось что по ошибке id кроме textView еще и в Layout прописал. А за совет спасибо, в следующий раз присоединю лог.

Oleg34
Сообщения: 17
Зарегистрирован: 26 дек 2012, 15:41

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Oleg34 » 02 янв 2013, 13:53

У меня не добавляется по id. Вроде все правильно делаю. И не работает строка

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

android:text="@string/hello"
. Сначала постоянно выдавало ошибку: Error: No resource found that matches the given name (at 'text' with value '@string/hello').. Потом, не знаю, что поменял, гореть красным и выдавать ошибку перестало. Вот скрины с экрана:
6.png
7.png

Djon745
Сообщения: 6
Зарегистрирован: 12 фев 2013, 13:21

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Djon745 » 14 фев 2013, 22:57

Button myBtn = (Button) findViewById(R.id.myBtn);

Скажите что означает каждое слово поподробнее

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 14 фев 2013, 23:25

Djon745 писал(а):Button myBtn = (Button) findViewById(R.id.myBtn);

Скажите что означает каждое слово поподробнее
:?
Button(класс кнопки/элемента/формы_кнопки) myBtn(наименование переменной класса) = (знак присваивания) (Button)(приведения к классу Button. Почему? потому что метод findViewById возвращает класс View) findViewById(R.id.myBtn)(возвращает элемент View по его id, эта View должна находится в текущем лейауте) ; (окончание строки кода)
R.id.team
Политика на форуме запрещена

mishurikv
Сообщения: 2
Зарегистрирован: 27 фев 2013, 18:21

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение mishurikv » 02 мар 2013, 19:15

myTextView.setText("New text in textview");
1. ошибка с точкой пишет: "syntax error on token(s), misplaced construct(s)"
2. ошибка с написанным текстом: "Syntax error on token ""New text in textview"", delete this token"

Объясните мне, чайнику, в чем проблема, стоит в правильном месте, пробовал ворошить, но ничего не получается.

Reset256
Сообщения: 1
Зарегистрирован: 06 фев 2013, 13:03

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение Reset256 » 09 мар 2013, 16:30

Cannot cast from View to Button
Что за ошибка и с чем может быть связана?
Код точно как в примере.

Lkami
Сообщения: 5
Зарегистрирован: 24 мар 2013, 14:07

Урок 8 стал для меня трех дневным битьем об стенку.

Сообщение Lkami » 28 мар 2013, 00:04

3 дня бьюсь! Ну не работает.

package ru.startandroid.develop.viewbyid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;

public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView myTextView = (TextView) findViewById(R.id.myText);
myTextView.setText("New text in TextView");

Button myBtn = (Button) findViewById(R.id.myBtn);
myBtn.setText("My button");
myBtn.setEnabled(false);

CheckBox myChb = (CheckBox) findViewById(R.id.myChb);
myChb.setChecked(true);
}
}

подчеркивает myText myBtn и myChb везде ругается одним и тем же матом "cannot be resolved or is not a field".
ID прописал на каждый элемент, но R.java выглядит так

package ru.startandroid.develop.viewbyid;
public final class R {
public static final class attr {
}
public static final class dimen {
/** Default screen margins, per the Android Design guidelines.
Customize dimensions originally defined in res/values/dimens.xml (such as
screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.
*/
public static final int activity_horizontal_margin=0x7f040000;
public static final int activity_vertical_margin=0x7f040001;
}
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
public static final class id {
public static final int action_settings=0x7f080000;
}
public static final class layout {
public static final int main=0x7f030000;
}
public static final class menu {
public static final int main=0x7f070000;
}
public static final class string {
public static final int action_settings=0x7f050001;
public static final int app_name=0x7f050000;
public static final int hello_world=0x7f050002;
}
public static final class style {
/**
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
*/
public static final int AppBaseTheme=0x7f060000;
/** Application theme.
All customizations that are NOT specific to a particular API-level can go here.
*/
public static final int AppTheme=0x7f060001;
}
}
Что не так, подскажите пожалуйста. В предыдущих уроках проблем не возникало. Ctrl+Shift+O нажимаю естественно, но чуда нет.

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 28 мар 2013, 00:52

импорт R файла нету, та и в самом файле нету айдишников, клин проекту сделайте что бы эклипс пересоздал R файл
R.id.team
Политика на форуме запрещена

Lkami
Сообщения: 5
Зарегистрирован: 24 мар 2013, 14:07

Урок 8. Работаем с элементами экрана из кода

Сообщение Lkami » 30 мар 2013, 12:43

Прописываю в main @+id/myText программа предлагает обновить какие то ссылки и перезаписать R.java подтверждаю (ОК). Но в R.java нет id.

Main выглядит так
<TextView
android:id="@+id/myText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />

</RelativeLayout>

Если под клином понимается нажатие Clean UP в Source, то это ничего не меняет. Подскажите кто нибудь в чем проблема?

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

Re: Урок 8. Работаем с элементами экрана из кода

Сообщение rezak90 » 30 мар 2013, 14:40

Project - Clean
R.id.team
Политика на форуме запрещена

Ответить