• Реально ли начать писать программы под андроид на C#? Или проще начать изучать Java?

    @pvlunegov
    Если вы хотите фрилансить, заниматься в свободное от работы время.
    Тогда я вас разочарую, больших успехов вы не добьетесь.
    Если особой заинтересованности, сверхидеи нету, то ввиду огромных трудностей, граблей, вы разочаруетесь на полпути и бросите это сложное дело.
    Многочисленные попытки миллионов людей подтверждают это.

    Я вам советую выбрать вдохновляющую вас цель, разбить ее на шаги (достаточно маленькие и легко достигаемые - это долгая и упорная работа!) и получать кайф от достижения каждого маленького шага.

    Я например, понял, что программировать игры на C# под Unity3d это кайф. Публиковать маленькие игры на Андроид Маркете это суперкайф.

    Я сделал мегапроект суперигры, разбил ее на множество сцен, каждая из которых достойна отдельной маленькой игры под Андроид.

    Каждую мини игру я делаю отдельно и публикую на Маркете.
    от каждой игры получаю массу позитива, гордости и внутренней уверенности.

    Постепенно достигаю большой цели + доходик небольшой от рекламы в играх = профит!
  • Реально ли начать писать программы под андроид на C#? Или проще начать изучать Java?

    @pvlunegov
    Если вы будете писать ПРОГРАММЫ под андроид, то уточните вопрос -
    "Для какой категории программы? Для какой организации? Где будете работать потом? В какой стране планируете работать?"
    Если вы всерьез решили изучить платформу и писать ПРОФЕССИОНАЛЬНЫЕ программы, то это меняет дело.
    Для этого надо как минимум нацеливаться посещать ИНОСТРАННЫЕ курсы и намечать работу в иностранной компании, или представительстве.
    НАшенские компании недоразвиты пока.
    Для этой цели вам надо не задавать вопросы на сайте, а встречаться с конкретными людьми, просить у них план обучения.

    Как минимум вы должны выбрать специализацию и по ней кропотливо заниматься. Весь Андроид вы изучить просто физически не сможете, тут нужно приложить фантазию, понять что вы ХОТИТЕ, к чему ЛЕЖИТ ДУША.

    После этого выбора у вас отпадет необходимость задавать вопросы. Вы загоритесь идеей, открывающимися возможностями и будете методично изучать вопрос
  • Как сделать экран загрузки?

    @pvlunegov
    Вот тут - habrahabr.ru/company/microsoft/blog/207800
    подробно написано как создавать всплывающие окна на XAML/С#.
    Может поможет.
  • Как сделать экран загрузки?

    @pvlunegov
    ваш ответ не подходит. Не будет же автор вопроса изменять существующий код и оборачивать его...
    Он задал конкретный вопрос - как выводить всплывающее окно вторым потоком (в фоне), во время выполнения основного потока
  • Как обратиться к методу класса Form из другого класса?

    @pvlunegov
    private Form host_;
    public AnotherType(Form host)
    {
    host_ = host;
    }

    По сути это создание объекта-отражения (внутри класса) внешнего объекта-формы, присваивание ссылки на него объекту-отражению.
    Такой подход очень кривой и приводит к сжиранию памяти.
    Представьте себе на Android, большую форму. Вы копируете ссылку на нее во внутренний объект класса, сжирая память!
    Это неправомерно большие затраты памяти!

    Делегат, используя оптимизированный алгоритм, вместо ссылки на ОБЪЕКТ создает встроенный класс, который создает ССЫЛКИ НА МЕТОДЫ целевого объекта.

    Это существенно уменьшает нагрузку на память.

    Так что не слушайте доморощенных изобретателей, читайте матчасть, а именно, литературу по языку!
  • Как обратиться к методу класса Form из другого класса?

    @pvlunegov
    private Form host_;
    public AnotherType(Form host)
    {
    host_ = host;
    }

    По сути это создание объекта-отражения (внутри класса) внешнего объекта-формы, присваивание ссылки на него объекту-отражению.
    Такой подход очень кривой и приводит к сжиранию памяти.
    Представьте себе на Android, большую форму. Вы копируете ссылку на нее во внутренний объект класса, сжирая память!
    Это неправомерно большие затраты памяти!

    Делегат, используя оптимизированный алгоритм, вместо ссылки на ОБЪЕКТ создает встроенный класс, который создает ССЫЛКИ НА МЕТОДЫ целевого объекта.

    Это существенно уменьшает нагрузку на память.

    Так что не слушайте доморощенных изобретателей, читайте матчасть, а именно, литературу по языку!
  • Как обратиться к методу класса Form из другого класса?

    @pvlunegov
    tex0 нарисовал код, в котором нужному объекту в коде придется заводить аналогичный объект-отражение, и в него передавать ссылку на целевой объект.

    По сути, он, не разбираясь в использовании Делегатов, скопировал их подход и технологию, но сделал это по своему.

    Зачем изобретать велосипед? Такая технология давно изобретена, задокументирована и встроена в С#.

    Уважаемый tex0, учите матчасть, не изобретайте велосипед, предлагайте готовые решения встроенные в язык!
  • Как обратиться к методу класса Form из другого класса?

    @pvlunegov
    Антон Савченко: Экземпляр делегата может быть привязан, как к статическому так и к нестатическому методу класса. В случае со статическим методом, перед именем метода указывается имя класса. Если имя класса опущено, подразумевается класс, в реализации которого встречается инициализация экземпляра делегата. В случае с нестатическим методом, перед его именем указывается имя объекта Если имя объекта опущено, предполагается, что используется текущий экземпляр (this):

    dg = new MyDelegate(ClassName.MethodName); //статический метод

    dg = new MyDelegate(ObjectName.MethodName); //нестатический метод
  • Как обратиться к методу класса Form из другого класса?

    @pvlunegov
    При использовании делегата не важно что и как и где использовать. Сам делегат позволяет использовать его где угодно для вызова метода, на который он подписан.