Форум программистов, компьютерный форум CyberForum.ru

В чем разница (View view) и (View v) - Android

Восстановить пароль Регистрация
 
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 15:39     В чем разница (View view) и (View v) #1
Я только начинаю изучать программирование под андроид (до этого вобще программированием не занимался), по гуглу удалось найти только описание для варианта "(View v)" http://developer.android.com/referen...kListener.html

Вот например код:
Java
1
2
3
4
public void onClick(View view) {
        TextView helloTextView = (TextView)findViewById(R.id.textView);
        helloTextView.setText("Hello Kitty!");
    }
Почему в документации написано "onClick(View v)" а тут в коде "onClick(View view)"? Это что, просто сокращение чтобы меньше писать? Или (View view) и (View v) означают разные вещи? Разъясните, пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.05.2015, 15:39     В чем разница (View view) и (View v)
Посмотрите здесь:

Android Программное добавление View
Gallery and custom view Android
Android XML vs View
Отрисовка View Android
Android Тип view
Скопировать view Android
Public void onClick(View view) Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
не спать!
1882 / 1616 / 500
Регистрация: 12.05.2014
Сообщений: 5,836
Завершенные тесты: 1
01.05.2015, 15:55     В чем разница (View view) и (View v) #2
это просто название переменной, там можно написать хоть
Java
1
View yaTvojTrubaShatal
- ничего не поменяется
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:17  [ТС]     В чем разница (View view) и (View v) #3
Спасибо! Попробовал написать "View yaTvojTrubaShatal" - действительно ничего не изменилось, программа работает.

Тогда такой еще вопрос, если ничего не меняется, почему вобще необходимо писать там какое-то название переменной? Бывают какие-то случаи когда есть разница что там за переменная, или это просто по синтаксису там что-то должно быть написано? Я просто пытаюсь понять этот код построчно, что вобще происходит в каждой строке. И вот эта первая строчка самая непонятная (за исключением "public void").
Паблито
не спать!
1882 / 1616 / 500
Регистрация: 12.05.2014
Сообщений: 5,836
Завершенные тесты: 1
01.05.2015, 16:19     В чем разница (View view) и (View v) #4
я думаю, ты занимаешься фигней
направь свой напор на что-то более важное в программировании
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:23  [ТС]     В чем разница (View view) и (View v) #5
Ну а все же? Мне кажется это какие-то базовые вещи, и если я их не пойму, то дальше каша в голове будет только накапливаться.
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
01.05.2015, 16:24     В чем разница (View view) и (View v) #6
krionic, Вы не с базовых вещей начали-то. Вам для начала основы java нужны.
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:29  [ТС]     В чем разница (View view) и (View v) #7
YuraAAA, я начал с простейшей программы которая выводит "Hello Kitty!" при нажатии кнопки, вроде уж куда проще..
Паблито
01.05.2015, 16:30
  #8

Не по теме:

я думаю это тролль

Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,488
01.05.2015, 16:47     В чем разница (View view) и (View v) #9
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от krionic Посмотреть сообщение
Мне кажется это какие-то базовые вещи, и если я их не пойму, то дальше каша в голове будет только накапливаться.
...не буду тебя пинать! Сам лет 10 назад (на первом своем языке такие вопросы задавал)...

Теперь по порядку:
1) есть функция. В этой функции могут быть ЛЮБЫЕ параметры.
2) есть ОСОБЫЕ функции. У них параметры должны быть любые, но заданное количество, и заданного типа. Например функция вызываемая при нажатии кнопки должна иметь обязательный параметр типа View куда пересылается ссылка на кнопку которую ты нажал. Этот параметр можно использовать (поменять текст на нажатой кнопке используя общую функцию для нескольких кнопок), а можно игнорировать (вариант View yaTvojTrubaShatal)
3) советую изучить основы ООП. Там это (довольно мутно, но) описано...
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 17:14  [ТС]     В чем разница (View view) и (View v) #10
Паблито, нет, я реальный человек, занимаюсь рисованием и дизайном вот пример: http://s7.********************/upload...8874987176.jpg

Никогда не думал изучать программирование. Но по работе пришлось изучить Axure чтобы делать динамические прототипы приложений. Axure я изучил буквально за несколько дней, там простые и понятные примеры есть, а внутри вся логика построена на динамических панелях и аналоге оператора Switch. В общем, прототипирование оказалось чем-то средним между программированием и дизайном. И я задумался, а не изучить ли мне программирование, ведь тогда я мог бы сам делать приложения и (конечно же) стать миллионером Но пока, честно говоря дело идет не очень. Даже самые нубские уроки по программированию в androidStudio такое впечатление рассчитаны на людей которые уже на чем-то программируют. Везде авторы пишут "чтобы вывести текст на экран введите такой-то код", причем никакого разбора что конкретно значат слова в этом коде нет. Так, мне кажется, можно научиться только ctrl+c, ctrl+v делать.

Добавлено через 16 минут
Tester64, спасибо за подробный ответ и ссылку на ООП! Скажите, а есть ли какая-то документация, где описано что "параметр типа View куда пересылается ссылка", или это как-то автоматически подразумевается исходя из принципов ООП? Туда ведь могло бы и что-то другое пересылаться, почему именно ссылка? Можно ли где-то об этом прочитать?

И еще, Вы написали "Этот параметр можно использовать (поменять текст на нажатой кнопке используя общую функцию для нескольких кнопок), а можно игнорировать (вариант View yaTvojTrubaShatal)". То есть получается что (View view) и (View v) что-то куда-то пересылают, а любое другое имя (View yaTvojTrubaShatal) - нет? Опять же тогда вопрос, эквивалентны ли (View view) и (View v)? В документации http://developer.android.com/referen...kListener.html указан вариант (View v), но в уроках встречается и тот и другой варианты.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.05.2015, 19:19     В чем разница (View view) и (View v)
Еще ссылки по теме:

Android Узнать размер view
Движение View Android
View во фрагментах Android
Android Сериализация View
Android Красивые View

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

Или воспользуйтесь поиском по форуму:
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,488
01.05.2015, 19:19     В чем разница (View view) и (View v) #11
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от krionic Посмотреть сообщение
или это как-то автоматически подразумевается исходя из принципов ООП
Это даже не совсем ООП... Это скорее API андроида! При создании класа активити(формочек) создатели (гугл) решили что в функцию обработки нажатия полезно передать ссылку на саму кнопочку... И сделали... И скупо описали в своей документации... ООП здесь только в принципах назначения обработчика и при анализе исходников "предка"(термин смотри в теории ООП) твоего активити.

Короче... много надо просто "принять", "запомнить" и использовать не до конца вдаваясь в принципы... просто те кто это писал до тебя решили что это всем будет полезно...

Попробую "на пальцах"...
на активити рисуешь две кнопки
ОБЕИМ назначаешь ОДНУ И ТУ-ЖЕ обработку нажатия. Но благодаря наличию переменной в параметрах фукнций (название можешь любое задать, но обязательно должно быть хоть какое-нибудь) можешь получить ссылку на саму кнопку и например изменить конкретно у нее название, цвет.
Или в зависимости от текста кнопки можно делать в одной и той-же функции разные действия.
Yandex
Объявления
01.05.2015, 19:19     В чем разница (View view) и (View v)
Ответ Создать тему
Опции темы

Текущее время: 18:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru