Задать вопрос
  • Как привязать изменение одного реквизита другому?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    На примере справочника "Номенклатура поставщиков" такой кейс вообще странный, потому что оно для того и сделано разными справочниками, чтобы решить проблему, когда одна и та же номенклатура, у нас и у поставщика по разному называется.
    Если формально решать задачу; "при изменении реквизита изменить другой", то решение зависит от того, обычные у вас формы или управляемые. Предположу что управляемые, поскольку они используются практически во всех современных конфигурациях. Тогда нужно для реквизита1 добавить обработчик события ПриИзменении, и в нем описать алгоритм заполнения реквизита2. Чтобы в управляемых формах добавить обработчик события, нужно вызвать контектное меню реквизита1 и в пункте "События" выбрать <ПриИзменении> После чего выбрать, какой обработчик события вам нужен, на клиенте, или на клиенте с обработкой на сервере.
    Ответ написан
    1 комментарий
  • Как узнать предназначения полей БД 1С?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Используйте функцию ПолучитьСтруктуруХраненияБазыДанных()
    Подробнее по ссылке: professia1c.ru/sql/kak-uznat-imena-tablits-1s-v-sql

    Однако, фирма 1С не рекомендует работать с базой данных 1С напрямую. Если не собираетесь ничего менять, то это еще простительно, если же планируется добавлять или изменять данные, то с базой лучше работать через инструменты 1С.
    Ответ написан
    Комментировать
  • Как использовать неинициализированные переменные в методе кнопки?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Переменные конечно использовать можно. Жаль что вы не указали ошибку, которая у вас возникает.
    Лучше так не пишите:
    first_array = new Integer[Integer.parseInt(textField.getText())][Integer.parseInt(textField2.getText())];.

    И сами путаетесь и другим читать тяжело, и при отладке куча проблем.
    Так пишите:
    int rowSize = Integer.parseInt(textField.getText());
    int columnSize = Integer.parseInt(textField2.getText());
    if (rowSize>0 && columnSize>0) {
        first_array = new Integer[rowSize][columnSize]; 
    }
    Ответ написан
  • Как мы можем видеть Activity без создание методов OnStart и OnResume?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Нет, вы ошибаетесь. Все нужные методы есть и вызваны. Просто они не переопределены, а значит используются унаследованные из AppCompatActivity, там их и ищите.
    Жизненный цикл можете посмотреть либо в отладчике, либо переопределив все нужные методы. В теле переопределенных методов вызовите их же из родительского класса, через super и добавьте свои логи, или чего вам там хочется.
    Ответ написан
    1 комментарий
  • Как вызвать private метод в Fragmente Android Studio?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    В методе onCreateView, вместо
    EditText editTextEmail = (EditText) v.findViewById(R.id.email);
            EditText editTextPassword = (EditText) v.findViewById(R.id.password);

    Нужно
    editTextEmail = (EditText) v.findViewById(R.id.email);
            editTextPassword = (EditText) v.findViewById(R.id.password);

    Поясню:
    У вас в пределах класса объявлены переменные private EditText editTextEmail, editTextPassword;
    Затем, в методе onCreateView, вы при присвоении им значений, перед именем переменной пишете EditText Таким образом вы объявляете новые переменные, в пределах видимости метода, а переменные класса остаються неинициализированными, т.е. null.
    Затем, после вызова, в методе userLogin у вас происходит обращение к переменной editTextEmail.getText() но, editTextEmail содержит null и такое обращение вызывает Null Point Exeption что для пользователя выглядит как просто закрытие приложения.
    И не факт, что это единственная ошибка.
    Ответ написан
    Комментировать
  • Как получить объект справочника по значению доп. реквизита?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Ном = Справочники.Номенклатура.НайтиПоРеквизиту("Гарантия", ЗначениеРеквизита);

    Этот способ подходит для поиска по реквизитам справочника. И он ищет только первый элемент и не годится, если их несколько.
    Но, поскольку вы пишете что вам нужно осуществить поиск по дополнительному реквизиту, то вам прийдеться писать запрос, и решение зависит от того, как в вашей конфигурации реализованы дополнительные реквизиты.
    Например, в конфигурации УНФ, дополнительные реквизиты, это элементы табличной части справочника Номенклатура. При этом "свойство", т.е. имя реквизита, в вашем случае "Гарантия", это план видов характеристик ДополнительныеРеквизитыИСведения. Запрос будет выглядеть примерно так:
    Запрос = Новый Запрос;
    	Запрос.Текст = 
    		"ВЫБРАТЬ РАЗЛИЧНЫЕ
    		|	НоменклатураДополнительныеРеквизиты.Ссылка КАК НоменклатураСсылка
    		|ИЗ
    		|	Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
    		|ГДЕ
    		|	НоменклатураДополнительныеРеквизиты.Свойство = &Свойство
    		|	И НоменклатураДополнительныеРеквизиты.Значение = &Значение";
    	
    	Запрос.УстановитьПараметр("Значение", ЗначениеГарантии);
    	Запрос.УстановитьПараметр("Свойство", СсылкаНаПВХ_Гарантия);
    	
    	РезультатЗапроса = Запрос.Выполнить();
    	
    	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    	
    	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    		// Вставить обработку выборки ВыборкаДетальныеЗаписи
    	КонецЦикла;
    Ответ написан
    Комментировать
  • Как правильно отлаживать разобранное приложение в android studio?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Реверс-инжиниринг, сам по себе занятие не для новичков. Декомпилятор выдает вам исходники, причем, если разработчик позаботился о защите своего приложения, то ужасно плохо читаемые (обфускация).
    При этом, IDE (Android Studio) для сборки приложения, не достаточно этих исходников, нужна еще некоторая информация, которой у вас нет. Её нужно добавлять руками, анализируя полученные исходники.
    Может конечно и существует легкий способ получить собираемый исходник, но лично мне такой не известен.
    Ответ написан
    2 комментария
  • Как сделать прибавление единицы к переменной если какая-то переменная стала нулём unity?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Исправьте так:
    void Update() {
        if(Input.GetMouseButton(0)) {
            transform.localScale = Vector2.Lerp(transform.localScale, scale1, 20.0f * Time.deltaTime);
        } 
        else {
            transform.localScale = new Vector2(6, 6);
        }
        GoldDisplay.text = "Тапов: " + taps;
        if (Input.GetMouseButtonDown(0)) {
            taps -= 1;
            if (taps == 0) {
                beh.score_1++;
            }
        }
    }
    Ответ написан
    Комментировать
  • Можна ли делать софт под андроид на C Sharp и Unity?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Можна ли на Unity делать приложения на андроид (Глупый вопрос), при помощи си шарп?

    На Unity приложения (игры) делаются на C# и их можно сбилдить под андроид.
    Ответ написан
  • Стоит ли полностью переходить на SingleActivity?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Стоит. Такой подход не хуже, "стандартных активити".
    Использование отдельных активити для каждого экрана, устарело с момента появления фрагментов.

    Ну и держите ссылку на статью по теме: https://habr.com/ru/company/redmadrobot/blog/426617/
    Ответ написан
    Комментировать
  • В каком сейчас состоянии Android Development Studio + AMD?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Сейчас с этим лучше. Цитата отсюда:
    Virtualization extension requirements
    In addition to the development environment requirements, your computer's processor must support one of the following virtualization extensions technologies:

    • Intel Virtualization Technology (VT, VT-x, vmx) extensions
    • AMD Virtualization (AMD-V, SVM) extensions

    Most modern processors support these virtualization extensions. If you're not sure whether your processor supports these extensions, check the specifications for your processor on the manufacturer's site. If your processor doesn't support one of these extensions, then you can't use VM acceleration.
    Ответ написан
    Комментировать
  • Как сделать поочерёдный удар?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Ну, вот тебе хоть какой нибудь код.
    while (player.hitpoints > 0 && enemy.hitpoints > 0) {
           enemy.hitpoints = enemy.hitpoints - player.getDamagePower()
           if (enemy.hitpoints>0) {
                 player.hitpoints = player.hitpoints - enemy.getDamagePower()       
           }
    }
    Ответ написан
    2 комментария
  • Ошибка java в Android приложении?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    При чем тут тег JAVAFX, если речь идет об Андроид приложении? Или если не об Андроид, тогда почему Андроид упомянут в заголовке?
    Что касается ответа на вопрос, то его способен дать даже гугл-переводчик, вот что он нам сообщает:
    Ошибка нехватки памяти: Не удалось выделить 83886328 байтов с 25165824 свободными байтами и 46 МБ до OOM, целевой размер 245232608, предел роста 268435456

    Другими словами, вашему приложению понадобилось 83 мегабайта памяти, при этом свободно у вас всего 25 мегабайт.
    Ответ написан
  • Как заставить объект поворачиваться в сторону другого объекта, после уничтожения другого объекта?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Вопрос, что вы делаете после уничтожения. И как ваша турель определяет что объект уничтожен.
    Предположим, что вы просто в цикле вызываете FindGOwithTag и после уничтожения цели, турель всё равно его находит, значит вы его не уничтожаете, а например только скрываете. Попробуйте, перед уничтожением объекта менять ему тег. Тогда, даже если какое-то время уничтоженный объект будет оставаться в сцене, турель его не найдет и переключится на другой объект.
    Ну, а возможно вы вообще не организовали цикл, и ищете цель только один раз. С телепатами нынче напряженка, они в большом дефиците.
    Ответ написан
    Комментировать
  • Как перемещать увеличенную картинку?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Ну, смотрите, у вас в свойствах картинки
    android:scaleType="centerCrop"
    И размеры "match_parent" - при таком раскладе, там нечего перемещать, всё уже обрезалось и за пределами экрана ничего нет.
    Попробуйте например поместить картинку в ScrollView с включенным горизонтальным и вертикальным скроллом, и установить размеры "wrap_content" у ImageView, а у родительского ScrollView "match_parent".
    Ответ написан
    2 комментария
  • Как реализовать ночную тему в android приложении?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    При этом activity не должна пересоздаваться (важно)
    Хорошо подумайте, так ли это важно, потому что для смены темы без пересоздания активити прийдется писать много кода.
    Подробности по ссылке: https://dimlix.com/switch-theme-android/
    Ответ написан
  • Утечка памяти, объекты не удаляются?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Для начала проверьте правильно, есть ли утечка. Ссылок не должно оставаться после того как отработает сборщик мусора. Что и как делать для поиска утечек памяти, очень хорошо описано в этой статье:
    https://habr.com/ru/company/sebbia/blog/243537/
    Ответ написан
  • Крашается игра после написания кода для кнопки "назад". Как исправить?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Поскольку код внутри листнера у вас весь в попытке, он крашится не может. Значит крашится само обращение к переменной btn_back через точку. Это может быть если btn_back = null
    Если findViewById возвращает вам null значит вью с id button_back нет в лейауте, с которым вы работаете.
    Ответ написан
    Комментировать
  • Как проверить добавленный через расширение реквизит объекта (булево) в общем модуле?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Ну, этот реквизит должен прийти в функцию с параметрами. Например, если в параметре ДокументРасчетов и есть тот документ, которому вы добавили реквизит, то так и нужно проверять, через точку: ДокументРасчетов.ПолнаяОплата
    Ответ написан
    Комментировать
  • Как получить данные с датчиков Android устройства по сети?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Нужно написать на него приложение которое будет работать как REST API сервер.
    А так, используя штатные возможности андроида - нельзя.
    То что андроид 4.0 это не помеха, на современных средствах разработки еще можно под него писать.
    Ответ написан
    Комментировать