Форум программистов, компьютерный форум CyberForum.ru

Progress Bar и мультипоточность - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Смена цвета полосы над приложением http://www.cyberforum.ru/android-dev/thread1673067.html
Здравствуйте. Подскажите, пожалуйста, как сменить цвет полосы над приложением, где показывается зарядка, время, связь и др. (См. рисунок). И как правильно этот элемент вообще называется?
Android Своеобразное приложение по типу клиент-сервер Доброго времени суток. Каким образом можно организовать приложение, которое предназначено, к примеру, для отправки запроса к диспетчеру такси и заказа авто, и что для этого необходимо использовать? Хранение заявок, я думаю, должно быть организовано в базе MySQL. Приложение наподобие https://habrahabr.ru/post/269135/, т.е. есть запросы, ответы и прочее. Правда не знаю, каким образом и... http://www.cyberforum.ru/android-dev/thread1673030.html
OnTouchListener Android
Здравствуйте! Этот код работает как надо на Android 5.0+, но на 4.4 и ниже по какой-то причине не работает. final Button xy = new Button(this); xy.setLayoutParams(dd_wrap_content_fill); xy.setText("\n\n\n\nListening...\n\n\n\n"); xy.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View p1, MotionEvent p2) { //x = (int) p2.getX();
Android Проложение пути в GoogleMaps
Здравствуйте. В приложение используются карты гугл. При загрузки карты показываются несколько маркеров (рисунок 1). При нажатии вручную на какой-либо маркер автоматически появляется небольшое меню с возможностью проложить путь до этого маркера (рисунок 2, выделено красной рамкой). У меня справа есть иконки, при их нажатии пока просто перемещается к определенному маркеру и показывается его...
Android Как определить правильную ориентацию фотографии? http://www.cyberforum.ru/android-dev/thread1672694.html
На одном устройстве правильная ориентация фото получается при её повороте (Camera.Parameters::setRotation(int rotation) на 90 градусов, на другом на 270 градусов (при одинаковой ориентации самих устройств конечно). Как-то можно программно выяснить на сколько нужно повернуть фото?
Android TargetSdkVersion в build.gradle compileSdkVersion - это версия при помощи которой я компилирую свое приложение, а targetSdkVersion - это версия, максимальная версия, которая должна быть на устройстве, чтобы на нем пошло мое приложение верно? То есть мое приложение идет гарантированно на всех версиях от minSdkVersion до targetSdkVersion правильно? А если допустим у меня targetSdkVersion ниже чем compileSdkVersion и я запускаю... подробнее

Показать сообщение отдельно
gigs
8 / 9 / 1
Регистрация: 21.12.2011
Сообщений: 397

Progress Bar и мультипоточность - Android

29.02.2016, 00:03. Просмотров 401. Ответов 16
Метки (Все метки)

Добрый день, имеется клас который достает данные с базы данных и генерит на их основе таблицу TableLayout, когда я его вызываю в onCreate() мое приложение висит 5 секунд и потом на экране появляется сгенерированная таблица. Вопрос в том как сделать так чтоб эти 5 секунд приложение не висло, а отображало на экране крутящийся бар.

Я делал так с помощью AsyncTask:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class DoWork extends AsyncTask<Void, Void, Void>{
    Context context;
 
    public DoWork(Context con){
        this.context = con;
    }
 
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        setContentView(R.layout.content_progress);
        pb = (ProgressBar) findViewById(R.id.progressBar);
        pb.setVisibility(View.VISIBLE);
    }
 
    @Override
    protected Void doInBackground(Void... params) {
        runOnUiThread(new Runnable() {
            public void run() {
                setContentView(new TableMainLayout(context));
            }
        });
 
        return null;
    }
 
    @Override
    protected void onPostExecute(Void result) {
 
        pb.setVisibility(View.INVISIBLE);
        super.onPostExecute(result);
    }
}
Код content_progress.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context="com.standart.trainschedule.ProgressActivity"
    tools:showIn="@layout/activity_progress">
 
    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true" />
</RelativeLayout>
new TableMainLayout(context) - это клас который генерит таблицу

Проблема в том что прогресс бар который я сделал в xml не отображается, я думаю что это из за того что в doInBackground() я снова вызываю setContentView(new TableMainLayout(context)); и оно заменяет setContentView из onPreExecute().

Как можно сделать так чтоб не использовать два раза setContentView ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru