Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Booker DeWitt
1 / 1 / 0
Регистрация: 04.05.2013
Сообщений: 20
#1

Расширил класс Button. Как нужно подправить XML-layout? Еще ClassCastException - Программирование Android

27.01.2014, 20:50. Просмотров 1664. Ответов 3
Метки нет (Все метки)

Расширил класс Button:

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
package com.some.thing;
 
import android.content.Context;
import android.util.AttributeSet;
import android.widget.Button;
 
public class ButtonVar extends Button{
    protected boolean correct = false;
    ButtonVar (Context context){
        super(context);
    }
    ButtonVar (Context context, AttributeSet attrs){
        super(context, attrs);
    }
    ButtonVar (Context context, AttributeSet attrs, int defStyle){
        super(context, attrs, defStyle);
    }
    public void setCorrect (boolean correct){
        this.correct = correct;
    }
    public boolean getCorrect (){
        return this.correct;
    }
}
А вот моя кнопка в XML:
XML
1
2
3
4
5
6
7
8
9
10
<Button
        android:id="@+id/buttonVar1"
        style="@style/ButtonVars"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="50dp"
        android:text="@string/button_var1_default"
        />
Что нужно подправить в XML? Я так понимаю тег Button должен изменить вид. И может еще где-то что-то надо подправить? Если заменить Button на com.some.thing.ButtonVar, то редактор layout выдает:
The following classes could not be instantiated:
- com.some.thing.ButtonVar (Open Class, Show Error Log)
Еще у меня ClassCastException вываливается здесь:
Java
1
btnVar1 = (ButtonVar) findViewById (R.id.buttonVar1);
Может это взаимосвязано?

Спасибо заранее за помощь!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2014, 20:50
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Расширил класс Button. Как нужно подправить XML-layout? Еще ClassCastException (Программирование Android):

Существует ли программа для перевода layout-xml в java класс?
Я вбиваю туда свой layout, а она даёт пример реализации этого layout, но через...

Layout, button, setVisibility
Как скрыть одну кнопку - понятно, но вот проблема.... как скрыть сразу целую...

Переход на другой layout через button
Добрый вечер, подскажите пожалуйста: мне нужно, чтобы при нажатии кнопки...

Корректно отформатировать Layout XML
Запутался в трех соснах, не могу выйти из леса! Нужно что б TabRowViewList...

есть исходный xml код, нужно подправить, кому не лень загляните
Этот код напрямую связан с видео-лекцией, которую при просмотре невозможно...

Button, изменить поведение, не перегружая класс Button
&lt;asp:Button .../&gt; рендерится как: &lt;input type=&quot;submit&quot; .../&gt; Вопрос, можно...

3
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
27.01.2014, 22:15 #2
Booker DeWitt, в xml:

XML
1
2
3
4
5
6
7
8
9
10
<com.some.thing.ButtonVar 
        android:id="@+id/buttonVar1"
        style="@style/ButtonVars"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="50dp"
        android:text="@string/button_var1_default"
        />
тогда не будет ошибки ClassCast.

И сделайте ребилд.
1
Booker DeWitt
1 / 1 / 0
Регистрация: 04.05.2013
Сообщений: 20
27.01.2014, 22:43  [ТС] #3
YuraAAA, ошибка, ссылается на строку
XML
1
<com.some.thing.ButtonVar
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.some.thing/com.some.thing.MainActivity}: android.view.InflateException: Binary XML file line #22: Error inflating class com.some.thing.ButtonVar
0
Booker DeWitt
1 / 1 / 0
Регистрация: 04.05.2013
Сообщений: 20
29.01.2014, 00:29  [ТС] #4
Решил проблему. Конструкторы класса должны быть публичными.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2014, 00:29
Привет! Вот еще темы с решениями:

Что еще требуется подправить на сайте?
Сделала сайт на Джумла, один раз уже обращалась к Вам за советами, вот все что...

Как подправить код, что бы поиск в XML файле производился по тому значению, который в TextBox'e
Доброго времени суток! Переделываю код под свой курсач и уже не могу...

Разрешения config.xml, Manifest.xml и кое что еще
доброго времени форумчане, недавно начал осваивать phonegap и сделал первое...

Если Button 1 и Button 2 нажаты - Button 3 стала активной, как?
Проверка если Button 1 и Button 2 нажаты - Button 3 стала активной Причем...


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

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

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