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

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

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

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

01.05.2015, 15:39. Просмотров 644. Ответов 10
Метки нет (Все метки)

Я только начинаю изучать программирование под андроид (до этого вобще программированием не занимался), по гуглу удалось найти только описание для варианта "(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):

Public void onClick(View view) - Программирование Android
Не работает public void onClick(View view) :wall: public class MainActivity extends AppCompatActivity implements View.OnClickListener...

View вытесняет другое view из activity - Программирование Android
После второго EditText должна располагаться кнопка. Но почему-то этот второй EditText выпихивает ее из activity. Что не так?

Движение View - Программирование Android
Здравствуйте формчане, требуются помощь, задача стоит в том что, нужно чтоб View компонент двигался по оси X, допустим в правую сторону,...

Сериализация View - Программирование Android
Здравствуйте. Мучает такой вопрос: Использую FrameLayout в коотрый динамически добавляются ImageView после чего пользователь может...

Красивые View - Программирование Android
Здравствуйте уважаемые форумчане, не так давно начал изучать Custom View и насмотревшись в других проектах, на красиво созданные элементы,...

Отрисовка View - Программирование Android
Здравствуйте! Имеется свой компонент, наследуемый от View. В нём (на его canvas, на всю) требуется отрисовать другой View, как это...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
01.05.2015, 15:55 #2
это просто название переменной, там можно написать хоть
Java
1
View yaTvojTrubaShatal
- ничего не поменяется
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:17  [ТС] #3
Спасибо! Попробовал написать "View yaTvojTrubaShatal" - действительно ничего не изменилось, программа работает.

Тогда такой еще вопрос, если ничего не меняется, почему вобще необходимо писать там какое-то название переменной? Бывают какие-то случаи когда есть разница что там за переменная, или это просто по синтаксису там что-то должно быть написано? Я просто пытаюсь понять этот код построчно, что вобще происходит в каждой строке. И вот эта первая строчка самая непонятная (за исключением "public void").
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
01.05.2015, 16:19 #4
я думаю, ты занимаешься фигней
направь свой напор на что-то более важное в программировании
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:23  [ТС] #5
Ну а все же? Мне кажется это какие-то базовые вещи, и если я их не пойму, то дальше каша в голове будет только накапливаться.
YuraAAA
1571 / 1313 / 270
Регистрация: 25.10.2009
Сообщений: 3,432
Записей в блоге: 2
01.05.2015, 16:24 #6
krionic, Вы не с базовых вещей начали-то. Вам для начала основы java нужны.
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:29  [ТС] #7
YuraAAA, я начал с простейшей программы которая выводит "Hello Kitty!" при нажатии кнопки, вроде уж куда проще..
Pablito
01.05.2015, 16:30
  #8

Не по теме:

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

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

Теперь по порядку:
1) есть функция. В этой функции могут быть ЛЮБЫЕ параметры.
2) есть ОСОБЫЕ функции. У них параметры должны быть любые, но заданное количество, и заданного типа. Например функция вызываемая при нажатии кнопки должна иметь обязательный параметр типа View куда пересылается ссылка на кнопку которую ты нажал. Этот параметр можно использовать (поменять текст на нажатой кнопке используя общую функцию для нескольких кнопок), а можно игнорировать (вариант View yaTvojTrubaShatal)
3) советую изучить основы ООП. Там это (довольно мутно, но) описано...
krionic
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 17:14  [ТС] #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), но в уроках встречается и тот и другой варианты.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
01.05.2015, 19:19 #11
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от krionic Посмотреть сообщение
или это как-то автоматически подразумевается исходя из принципов ООП
Это даже не совсем ООП... Это скорее API андроида! При создании класа активити(формочек) создатели (гугл) решили что в функцию обработки нажатия полезно передать ссылку на саму кнопочку... И сделали... И скупо описали в своей документации... ООП здесь только в принципах назначения обработчика и при анализе исходников "предка"(термин смотри в теории ООП) твоего активити.

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

Попробую "на пальцах"...
на активити рисуешь две кнопки
ОБЕИМ назначаешь ОДНУ И ТУ-ЖЕ обработку нажатия. Но благодаря наличию переменной в параметрах фукнций (название можешь любое задать, но обязательно должно быть хоть какое-нибудь) можешь получить ссылку на саму кнопку и например изменить конкретно у нее название, цвет.
Или в зависимости от текста кнопки можно делать в одной и той-же функции разные действия.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.05.2015, 19:19
Привет! Вот еще темы с ответами:

View во фрагментах - Программирование Android
Чтобы прикрепить вид к layout в onCreateView мы раздуваем вид таким образом: View view = inflater.inflate(R.layout.fragment_mylayout,...

Скопировать view - Программирование Android
Привет. Как скопировать view(любой компонент от view) с одного layuot на другой без удаления, тоесть хочу создать клона только сменив...

Тип view - Программирование Android
Можно ли из кода узнать тип кликнутого view? например Button или TextView

XML vs View - Программирование Android
Я сейчас задам очень глупый вопрос, наверное, но все же: пользовательский интерфейс лучше создавать с помощью XML разметки или View? И в...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.05.2015, 19:19
Ответ Создать тему
Опции темы

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