
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 12.12.2020, 19:53 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  Привет. Ну, типичный способ Intent i = new Intent(parentActivity, typeof(newActivityClass)); parentActivity.SstartActivity(i); Но как получить экземпляр нового Activity? Intent как-то не кастится к Activity и не имеет методов его получения. Спасибо. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 12.12.2020, 23:10 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  Renziglov Но как получить экземпляр нового Activity? в тот момент, когда стартует новая activity, старая приостанавливается, так что вы ничего с этим экземпляром не сделаете. Какую задачу пытаетесь решить? Нужно какой-то результат вернуть из Activity2? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 13.12.2020, 01:58 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  chpasha, Нет, никакого результата. Эта форма используется кором некоего SDK, который обеспечивает секьюрити. SDK написан на Java и прибайнден к моему проекту как Xamarin Adroid Java Bind. SDK находит на моей форме кнопки и обрабатывает нажатия на них. Не доверяет никаким другим способам введения данных, сам обрабатывает. Эта активити должна быть создана, зарендерена, чтоб кнопки имели свои координаты и хранится в какой нибудь переменной до востребования. Только core SDK знает, когда ее показывать на экране, обрабатывать введенный пароль и убирать с экрана. Такова спецификация. Я могу эту активити хранить в (App)App.Current (Xamarin Forms), но как взять из интетна ее экземпляр? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 13.12.2020, 15:12 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  нихрена не понятно. но очень интересно :)  Renziglov но как взять из интетна ее экземпляр? Intent это что-то вроде "команды с параметрами". Как дословно стоит в документации - "пассивная структура данных, содержащая абстрактное описание необходимое для выполнения операции". Никакого экземпляра activity в нем нет и быть не может - ни до запуска, ни после. Экземпляр activity будет создан, запущен (со всеми вытекающими) и самое главное получит управление только после вызова startActivity(intent) в неопределенный момент времени в будущем - т.е. из вызывающего кода вот вообще никак нормальным способом. По-этому вся ваша концепция "отрендерить и положить в переменную до востребования" звучит мягко говоря странно. Если у вас какая-то там секьюрити, то она должна оперировать некими метаданными / DSL, а не "отрендеренной активити" и применять их только после запуска, причем из самой activity, а не извне. Возможно она так и делает, а вы просто непонятно объяснили. В любом случае все что вы можете хранить до востребования, это сам класс Activity и возможно его параметры запуска (Intent или какая-то абстрактная структура из которой intent будет заполнен). А ваш SDK, поскольку "он решает", должен знать что с этим делать, а главное когда и как. И вообще как-то странно - сейчас кучу activity запускать вообще уже считает не комильфо. Как правило для этого хватает одной Activity + много Fragment + Navigation Framework. Так чисто, вдруг вы не в курсе. Но принцип все равно сохраняется, что-либо делать вы можете только изнутри Activity или Fragment с момента отработки onCreate/OnViewCreated и т.д. (смотрите диграммы жизнедеятельности Activity и фрагментов) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 13.12.2020, 16:46 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  chpasha, Ну у меня, в принципе, так и сделано. У SDK есть событие типа Покажи Активити. Я создаю интент, из него якобы активити. Потом жду 100 мсек, чтоб оно отрендерилось. В OnStarted этого активити помещаю его экземпляр в (App)App.Current. Далее код Покажи Активити продолжается, в цикле ищу все кнопки полученного экземпляра, которые просит SDK и отправляю координаты ей. И евент хэндлер заканчивает работу. Для меня, это код макаронистый, я так делать уже отвык. Но если второй человек здесь на форуме говорит, что так оно и есть, то спасибо за подтверждение. С уважением. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 13.12.2020, 19:35 
 | 
|||
|---|---|---|---|
Как запустить Activity из из другого Activity?  | 
|||
| 
 #18+ 
  
    
  про макаронистый код ничего не могу сказать, и про сам подход тоже. Но то что с активностями и фрагментами делать можно что-то только изнутри - факт. Поосторожней там с сохранением ссылок на активности  - до утечек памяти рукой подать. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=13&mobile=1&tid=1330704]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    3ms | 
check topic access:  | 
    3ms | 
track hit:  | 
    57ms | 
get topic data:  | 
    14ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    52ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 12ms | 
| total: | 169ms | 

    | 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.