Как облегчить выбор базы данных? - PullRequest
0 голосов
/ 18 сентября 2018

Я новичок в стеке, но решил, что мне нужна помощь.Я надеюсь, что кто-то может помочь мне :).

Я хочу сделать следующее:

  • пользователь приложения сохраняет некоторые файлы базы данных (db3) через ПК в папке, которую он должен создать.В моем случае ему нужно назвать его «My Custom Foler».

  • реализовать Spinner, который позволяет пользователю выбирать из всех файлов db3 этого каталога и затем иметь возможность делать db_selected.getReadableDatabase

Просто, чтобы выразить это в контексте: я собираюсь реализовать ContenProvider и заполнить ListView элементами из определенной таблицы, используя SQliteOpenHelper и LoaderManager.LoaderCallbacks<Cursor>.НО ЭТО НЕ МОЙ ВОПРОС.

Я хочу настроить этот счетчик.Может быть, кто-то может помочь?

Вот мой код, который пока еще отсутствует, но основная структура должна быть понятной.

Привет:)

Я добавил:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

In Activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

        <ListView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/list">

        </ListView>

        <LinearLayout
            android:id="@+id/login_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:layout_margin="8dp">

            <Spinner
                android:id="@+id/select_database"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="1" />

        </LinearLayout>

    </RelativeLayout>

MainActivity.class

public class MainActivity extends AppCompatActivity {

     private final String DATABASE_PATH = "My Custom Folder";

     @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            //either we show login page or the populated ListView
            ListView populatedListView = (ListView) findViewById(R.id.list);
            View logInView = findViewById(R.id.login_view);
            populatedListView.setEmptyView(logInView);

            //How to setup a Spinner which lets select a ".db3" from a custom created Folder
            Spinner spinner = findViewById(R.id.select_database);
            //When Spinner item is clicked/touched I am gonna load it into my ListView
        }
    }
}
...