Ответы пользователя по тегу Java
  • Как распарсить Json в Java?

    a13xsus
    @a13xsus
    Lazy developer
    Это не json. Думайте в сторону того, чтобы источник возвращал корректный JSON, потом уже парсите как обычно.

    Сейчас применены следующие конфигурации к объекту: ALLOW_UNQUOTED_FIELD_NAMES (true); (FAIL_ON_UNKNOWN_PROPERTIES (false).
    Какие еще конфигурации нужно добавить, чтобы оно заработало?


    Попробуйте заменить = на : через String replace()
    Ответ написан
  • Какая кодировка в файле?

    a13xsus
    @a13xsus
    Lazy developer
    Там написано "Обнаружена новая версия"
    https://r12a.github.io/app-conversion/
    Ответ написан
    1 комментарий
  • Как создать этот эффект тени при нажатии на FloatingActionButton?

    a13xsus
    @a13xsus
    Lazy developer
    Нужно для FAB сделать свой layout, унаследованный от RelativeLayout. В нём добавить FrameLayout, ему задать соответствующий BackgroundColor c прозрачностью, например, #95ffffff. И затем переключать видимость этого FrameLayout при кликах на FAB (VISIBLE, INVISIBLE).

    Проще посмотреть либо взять код здесь.
    Ответ написан
    Комментировать
  • Как добавить метод в класс (Java)?

    a13xsus
    @a13xsus
    Lazy developer
    public class FL {
    
        public int sum(int x, int y)
        {
            int z;
            z = x + y;
            return z;
        }
    }


    скобка разве что, а так всё нормально.
    Ответ написан
  • Выпадает ошибка open failed: EROFS (Read-only file system), как исправить?

    a13xsus
    @a13xsus
    Lazy developer
    java.io.FileNotFoundException: /1.gif: open failed: EROFS (Read-only file system)

    private String saveFilePatch = "/1.gif";

    А зачем сохранять в корень файловой системы? Конечно она read-only. Сохраняйте на SD карту или в пользовательские папки.
    Ответ написан
    4 комментария
  • Какой атрибут отвечает за вертикальное выравнивание?

    a13xsus
    @a13xsus
    Lazy developer
    Если так:
    ce9b899aef5641d39e538d409290d277.png
    тогда каждому текствью "Где" и "Когда" добавь android:gravity="center_vertical"

    spoiler
    <?xml version="1.0" encoding="utf-8"?>
    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/BackgroundContent"
        tools:context="com.example.user.dbv2.Content_mainActivity"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="25dp">
    
        <TextView
            android:id="@+id/textView3"
            android:layout_width="0dp"
            android:layout_height="23dp"
            android:layout_marginBottom="50dp"
            android:layout_marginTop="49dp"
            android:text="Вождение"
            android:textSize="17sp"
            app:layout_constraintBottom_toBottomOf="@+id/textView7"
            app:layout_constraintLeft_toLeftOf="@+id/textView7"
            app:layout_constraintRight_toRightOf="@+id/textView4"
            app:layout_constraintTop_toTopOf="parent"
            tools:layout_constraintBottom_creator="1"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <TextView
            android:id="@+id/textView4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Теория"
            android:textSize="17sp"
            app:layout_constraintBottom_toTopOf="@+id/textView8"
            app:layout_constraintLeft_toLeftOf="@+id/textView8"
            app:layout_constraintRight_toRightOf="@+id/teor"
            tools:layout_constraintBottom_creator="1"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"/>
    
        <TextView
            android:id="@+id/textView7"
            android:layout_width="60dp"
            android:layout_height="50dp"
            android:layout_marginStart="108dp"
            android:layout_marginTop="72dp"
            android:gravity="center_vertical"
            android:text="Где:"
            android:textSize="17sp"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <TextView
            android:id="@+id/textView6"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:gravity="center_vertical"
            android:text="Когда:"
            android:textSize="17sp"
            app:layout_constraintBottom_toBottomOf="@+id/discr_for_tasks_test"
            app:layout_constraintLeft_toLeftOf="@+id/textView7"
            app:layout_constraintRight_toRightOf="@+id/textView7"
            app:layout_constraintTop_toBottomOf="@+id/textView7"
            tools:layout_constraintBottom_creator="1"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <ListView
            android:id="@+id/discr_for_tasks_test"
            android:layout_width="0dp"
            android:layout_height="50dp"
            android:divider="@null"
            android:textSize="17sp"
            app:layout_constraintLeft_toLeftOf="@+id/discr_for_tasks"
            app:layout_constraintRight_toRightOf="@+id/discr_for_tasks"
            app:layout_constraintTop_toBottomOf="@+id/discr_for_tasks"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <TextView
            android:id="@+id/textView8"
            android:layout_width="0dp"
            android:layout_height="50dp"
            android:layout_marginTop="48dp"
            android:gravity="center_vertical"
            android:text="Где:"
            android:textSize="17sp"
            app:layout_constraintLeft_toLeftOf="@+id/textView6"
            app:layout_constraintRight_toRightOf="@+id/textView6"
            app:layout_constraintTop_toBottomOf="@+id/textView6"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <TextView
            android:id="@+id/textView9"
            android:layout_width="0dp"
            android:layout_height="50dp"
            android:gravity="center_vertical"
            android:text="Когда:"
            android:textSize="17sp"
            app:layout_constraintLeft_toLeftOf="@+id/textView8"
            app:layout_constraintRight_toRightOf="@+id/textView8"
            app:layout_constraintTop_toBottomOf="@+id/textView8"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <ListView
            android:id="@+id/discr_for_tasks"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginEnd="15dp"
            android:layout_marginStart="1dp"
            android:divider="@null"
            android:textSize="17sp"
            app:layout_constraintBottom_toBottomOf="@+id/textView7"
            app:layout_constraintLeft_toRightOf="@+id/textView7"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/textView3"
            tools:layout_constraintBottom_creator="1"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <ListView
            android:id="@+id/teor"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginEnd="1dp"
            android:divider="@null"
            android:textSize="17sp"
            app:layout_constraintBottom_toBottomOf="@+id/textView8"
            app:layout_constraintLeft_toRightOf="@+id/textView8"
            app:layout_constraintRight_toRightOf="@+id/discr_for_tasks_test"
            app:layout_constraintTop_toBottomOf="@+id/textView4"
            tools:layout_constraintBottom_creator="1"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
        <ListView
            android:id="@+id/teor2"
            android:layout_width="0dp"
            android:layout_height="50dp"
            android:divider="@null"
            android:textSize="17sp"
            app:layout_constraintLeft_toLeftOf="@+id/teor"
            app:layout_constraintRight_toRightOf="@+id/teor"
            app:layout_constraintTop_toBottomOf="@+id/teor"
            tools:layout_constraintLeft_creator="1"
            tools:layout_constraintRight_creator="1"
            tools:layout_constraintTop_creator="1"/>
    
    </android.support.constraint.ConstraintLayout>
    Ответ написан
    Комментировать
  • Как можно подключить шрифт в приложение на andoid?

    a13xsus
    @a13xsus
    Lazy developer
    Typeface face = Typeface.createFromAsset(getAssets(), "fonts/mycutefont.ttf");
    someButton.setTypeface(face);

    Перед этим кладёшь ttf либо otf шрифты в assets/fonts.
    Ответ написан
    Комментировать
  • Проблемы с версткой экрана android. Как решить проблему не корректного отображения данных?

    a13xsus
    @a13xsus
    Lazy developer
    Когда верстаешь с использованием ConstraintLayout, необходимо, чтобы у каждого элемента были свои constrains. В редакторе отображается именно так, как ты разместишь, однако в реальном приложении, если constraints не будут указаны, позиция уедет в 0, 0 (левый верхний угол).

    Проще всего решить можно кликнув пкм по Constraint Layout > Constraint Layout > Infer constraints. Тогда студия сама расставит constraints согласно тому, как ты разместил в редакторе. Обычно этого хватает, но иногда может потребоваться расставить некоторые ограничители самому.
    скриншот
    23d4909df8cb47ccb74e484145581070.png


    Также можно все constaints расставить самому. В схематическом редакторе выделяем нужный элемент, вокруг него появляются точки соприкосновения, тянем за эти точки мышкой к нужной границе другого элемента либо экрана.
    скриншот
    8984587ee0b84d039093db79095dfd25.png


    Если у каких-либо элементов constraints будут отсутствовать, редактор об этом предупретит.
    spoiler
    8b06a7a0530e4628a0fac5afcc906163.png
    Ответ написан
    Комментировать
  • Верстка экрана под платформу andorid. Как сделать кнопку круглой?

    a13xsus
    @a13xsus
    Lazy developer
    Создаешь rounded_button.xml в drawable:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
            <shape android:shape="rectangle">
                <solid android:color="#bdbdbd"/>
                <corners android:radius="30dp" />
            </shape>
        </item>
    </selector>

    Самой кнопке указываешь в бекграунд созданный drawable:

    <Button
            android:id ="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Some Button"
            android:background="@drawable/rounded_button"
            android:padding="16dp"/>


    Либо создаешь ImageButton и в качестве фона ей указываешь любое изображение.
    Ответ написан
    2 комментария
  • Как убрать шапку при верстки экрана для мобильного приложения android?

    a13xsus
    @a13xsus
    Lazy developer
    Выбери тему без ActionBar.
    Ответ написан
    Комментировать
  • Где ошибка в коде Java?

    a13xsus
    @a13xsus
    Lazy developer
    Полагаю, ты хотел так
    package count;
    import java.util.Scanner;
    public class Dick {
      static int x;
      static int y;
      public static void main (String args[]) {
        scan();
        x = count(x);
        y = count(y);
        System.out.println("Теперь ваше первое число =" + x);
        System.out.println("Теперь ваше первое число =" + y);
        name(); //добавляем вызов метода name
      }
      
      private static int count (int m){	
        m = m + 1;
        return m;	
      }  
    
      public static void scan () {
        System.out.println("Введите первое число");
        Scanner scn = new Scanner(System.in);
        x = scn.nextInt();
        System.out.println("Введите второе число");
        y = scn.nextInt();
      }
    
      public static void name(){ 
        int p;
        //scan();
        p = x + y;
        System.out.println("Теперь сумма ваших чисел =" +p);
      }
    }

    Ответ написан
    1 комментарий
  • Использование фасадов Android?

    a13xsus
    @a13xsus
    Lazy developer
    /* Complex parts */
    
    public class Input
    {
        public String test() {
            return "sdas";
        }
    }
    
    public class Input2
    {
        public String test2() {
            return "sdas1";
        }
    }
    
    /* Facade */
    
    class InputFacade {
    	private Input input;
    	private Input2 input2;
    
    	public InputFacade() {
    		this.input = new Input();
    		this.input2 = new Input2();
    	}
    
    	public void startInput() {		
    		input.test();
    		input2.test2();
    		System.out.println(input.test() + input2.test2());
    	}
    }
    
    /* Client */
    
    class MyClass {
    	public static void main(String[] args) {
            InputFacade input = new InputFacade();
            input.startInput();
        }
    }

    > sdassdas1

    А вообще как бы вот, очень просто же > https://en.wikipedia.org/wiki/Facade_pattern
    Ответ написан
    Комментировать
  • В чем проблема с методом lenght?

    a13xsus
    @a13xsus
    Lazy developer
    length
    Ответ написан
    Комментировать
  • Что необходимо для реализации озвучивания нажатия на кнопку?

    a13xsus
    @a13xsus
    Lazy developer
    Желательно предоставить не сам метод, а набор знаний и источников для реализации данного метода.


    Класс MediaPlayer. Простая реализация, если проигрывать уже встроенный в приложение звук:

    MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
    mediaPlayer.start();

    После проигрывания обязательно нужно уничтожать инстанс медиплеера:

    if (mediaPlayer != null) {
    mediaPlayer.release();
    mediaPlayer = null;
    }


    Ну и можно реализовать requestAudioFocus() у AudioManager, если нужно, чтобы система автоматически приглушала системные звуки либо звуки программы в случае если приходит уведомление, проигрывается звук из другого приложения и т.п.
    Ответ написан
    Комментировать
  • Как сделать добавление CardView при загрузке контента динамически?

    a13xsus
    @a13xsus
    Lazy developer
    Держи https://goo.gl/IGjNnW вроде парсит
    Код ужасен, его нужно рефакторить.

    Только вынеси адаптер в асинктаске из цикла фор, чтобы получилось вот так
    4a2c57ff555f4abea8a3c4f16f8b5965.png
    Ответ написан
    Комментировать
  • Как запомнить активити в android?

    a13xsus
    @a13xsus
    Lazy developer
    У тебя в OnCreate должен быть слушатель AuthStateListener с методом onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth). Файрбейс сам проверяет авторизирован ли юзер, сам сохраняет токен, тебе лишь только надо написать смену активити, передачу токена дальше и пр.

    FirebaseAuth.AuthStateListener mAuthListener = new FirebaseAuth.AuthStateListener() {
               @Override
                public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                    FirebaseUser user = firebaseAuth.getCurrentUser();
                    if (user != null) {
                        // User is signed in
                        Log.d(TAG, "onAuthStateChanged:signed_in:" + user.getUid());
                    } else {
                        // User is signed out
                        Log.d(TAG, "onAuthStateChanged:signed_out");
                    }
                    updateUI(user);
                }
    };
    Ответ написан
  • Как сделать автоматическое добавление Layouts?

    a13xsus
    @a13xsus
    Lazy developer
    RecyclerView + Adapter + CardView
    https://code.tutsplus.com/tutorials/getting-starte...
    Ответ написан
    Комментировать
  • Как включить поддержку GPS на эмуляторе Android?

    a13xsus
    @a13xsus
    Lazy developer
    В настройках штатного эмуляторя от Гугла (который вместе со студией устанавливается) можно задать координаты gps, приложение соответственно будет их видеть. В других эмуляторах - зависит от производителя по.
    Ответ написан
  • Множественное наследование java, что я делаю не так?

    a13xsus
    @a13xsus
    Lazy developer
    Наследовать можно только один суперкласс.
    Ответ написан
    Комментировать
  • Старт нового Activity с помощью spinner?

    a13xsus
    @a13xsus
    Lazy developer
    Как выше уже было указано: https://developer.android.com/guide/topics/ui/cont...

    public class MainActivity implements AdapterView.OnItemSelectedListener {
        ...
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            ....
            Spinner spinner = (Spinner) findViewById(R.id.spinner);
            ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
                    R.array.planets_array, android.R.layout.simple_spinner_item);
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            spinner.setAdapter(adapter);
            spinner.setOnItemSelectedListener(this);
        }
    
        ...
    
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            parent.getItemAtPosition(position);
            switch (position) {
                case 0:
                    return;
                    //этот будет срабатывать сразу при отображении спиннера
                case 1:
                    Intent intent = new Intent(this, Main2Activity.class);
                    startActivity(intent);
                    return;
                case 2:
                    Intent intent = new Intent(this, Main3Activity.class);
                    startActivity(intent);
                    return;
            }
        }
    
        @Override
        public void onNothingSelected(AdapterView<?> parent) {
    
        }
    
    }


    strings.xml:
    <string-array name="planets_array">
            <item>Mercury</item>
            <item>Venus</item>
            <item>Earth</item>        
    </string-array>
    Ответ написан