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

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

Войти
Регистрация
Восстановить пароль
 
zuevmail
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 58
#1

FindViewByID возвращает Null производного класса View - Программирование Android

05.11.2015, 20:40. Просмотров 228. Ответов 2
Метки нет (Все метки)

Возвращает null в v, что может быть. если использовать родной SurfaceView все ОК.
Кнопку находит.
В проекте одно activity
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
 
        View v = findViewById(R.id.surface);
        Button b = (Button)findViewById(R.id.button);
        int i =v.getTop();
    }
}
Производный класс
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class CustSurface extends SurfaceView implements SurfaceHolder.Callback  {
    public CustSurface(Context context,AttributeSet attrs) {
        super(context);
        getHolder().addCallback(this);
    }
 
    @Override
    public void surfaceCreated(SurfaceHolder holder) {
 
    }
 
    @Override
    public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
 
    }
 
    @Override
    public void surfaceDestroyed(SurfaceHolder holder) {
 
    }
}
Разметка activity
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
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Start"
        android:id="@+id/button"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" />
 
    <ru.canvasview.CustSurface
        android:layout_width="250dp"
        android:layout_height="250dp"
        android:id="@+id/surface"
        android:layout_alignParentEnd="true"
        android:layout_alignParentTop="true"
        android:layout_above="@+id/button"
        android:layout_alignParentStart="true" />
</RelativeLayout>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2015, 20:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос FindViewByID возвращает Null производного класса View (Программирование Android):

FindViewByID возвращает Null - Программирование Android
День добрый. Я в разработке андроида новичек, и застрял можно сказать в самом начале. Имеется проект типа hello world Один...

RelativeLayout findViewById return null - Программирование Android
Я что-то не пойму никак.. почему RelativeLayout возвращает не ссылку на TextView, а null? @Override public Dialog...

Геокодирование. getFromLocationName() возвращает null - Программирование Android
По адресу (город, улица, дом) пытаюсь получить координаты. С некоторых пор почти всегда getFromLocationName() возвращает null. Хотя ранее...

BitmapFactory.decodeFile всегда возвращает null - Программирование Android
Выбираю картинку с галереи, получаю полный путь к файлу, но BitmapFactory.decodeFile(filename) всегда возвращает null. Почему?

LruCache метод put возвращает null - Программирование Android
Всем привет! Не могу поянть почему LruCache метод put возвращает null. Может быть кто знает подскажет в чем тут дело? Вот код: public...

Null при вызове метода из другого класса - Программирование Android
Суть такая. Я создал приложение с двумя активити NavigationView (через стандартный конструктор Adroid Studio). В шапку NavView я вывожу...

2
Pablito
2545 / 2027 / 631
Регистрация: 12.05.2014
Сообщений: 7,141
Завершенные тесты: 1
05.11.2015, 21:17 #2
а если все таки в конструкторе который принимает два параметра вызывать не super(context);
а как и положено - super(context, attrs); ?
1
zuevmail
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 58
05.11.2015, 21:20  [ТС] #3
Огромное спасибо. Все Ок
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2015, 21:20
Привет! Вот еще темы с ответами:

FindViewById - Программирование Android
Назрел вопрос, почему в MainActivity мы пишем, например, ListView lvMain = (ListView) findViewById(R.id.lvMain); А в другом классе можно...

findViewById и Fragment - Программирование Android
Пытаюсь использовать getView().findViewById Но не работает

В чем разница (View view) и (View v) - Программирование Android
Я только начинаю изучать программирование под андроид (до этого вобще программированием не занимался), по гуглу удалось найти только...

Какую роль выполняет findViewById в андроиде? - Программирование Android
ребята! подскажите пожалуйста, какую роль выполняет findViewById в андроиде? пример VideoView videoView =...


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

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

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