Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
1

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

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


Я только начинаю изучать программирование под андроид (до этого вобще программированием не занимался), по гуглу удалось найти только описание для варианта "(View v)" http://developer.android.com/r... tener.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) означают разные вещи? Разъясните, пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.05.2015, 15:39
Ответы с готовыми решениями:

Public void onClick(View view)
Не работает public void onClick(View view) :wall: public class MainActivity extends...

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

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

View во фрагментах
Чтобы прикрепить вид к layout в onCreateView мы раздуваем вид таким образом: View view =...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
Записывайтесь на профессиональные курсы Android-разработчиков
10
2881 / 2293 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
01.05.2015, 15:55 2
это просто название переменной, там можно написать хоть
Java
1
View yaTvojTrubaShatal
- ничего не поменяется
1
0 / 0 / 0
Регистрация: 04.07.2014
Сообщений: 6
01.05.2015, 16:17  [ТС] 3
Спасибо! Попробовал написать "View yaTvojTrubaShatal" - действительно ничего не изменилось, программа работает.

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

Не по теме:

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

0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
01.05.2015, 16:47 9
Лучший ответ Сообщение было отмечено krionic как решение

Решение

Цитата Сообщение от krionic Посмотреть сообщение
Мне кажется это какие-то базовые вещи, и если я их не пойму, то дальше каша в голове будет только накапливаться.
...не буду тебя пинать! Сам лет 10 назад (на первом своем языке такие вопросы задавал)...

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

Никогда не думал изучать программирование. Но по работе пришлось изучить 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/r... tener.html указан вариант (View v), но в уроках встречается и тот и другой варианты.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
01.05.2015, 19:19 11
Лучший ответ Сообщение было отмечено krionic как решение

Решение

Цитата Сообщение от krionic Посмотреть сообщение
или это как-то автоматически подразумевается исходя из принципов ООП
Это даже не совсем ООП... Это скорее API андроида! При создании класа активити(формочек) создатели (гугл) решили что в функцию обработки нажатия полезно передать ссылку на саму кнопочку... И сделали... И скупо описали в своей документации... ООП здесь только в принципах назначения обработчика и при анализе исходников "предка"(термин смотри в теории ООП) твоего активити.

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

Попробую "на пальцах"...
на активити рисуешь две кнопки
ОБЕИМ назначаешь ОДНУ И ТУ-ЖЕ обработку нажатия. Но благодаря наличию переменной в параметрах фукнций (название можешь любое задать, но обязательно должно быть хоть какое-нибудь) можешь получить ссылку на саму кнопку и например изменить конкретно у нее название, цвет.
Или в зависимости от текста кнопки можно делать в одной и той-же функции разные действия.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.05.2015, 19:19

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

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

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

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

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


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

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

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