0

その日の有名な名言を表示する Android アプリを作成して遊んでみたいと思います。したがって、365 の引用符があり、毎日新しい引用符が表示されます。これを達成する方法について何か考えはありますか?ファイルに 365 個の @string が必要string.xmlですか? これを達成するために、インデックスによって文字列の配列 (またはおそらく別のデータ構造) にアクセスする方法はありますか?

4

3 に答える 3

2

2列のSQLiteDBを使用できます

Day|Quote 
1  |Your Quote day 1
2  |Your Quote day 2

等...

SQLiteエディターを使用してDBをコンパイルしてから、コンパイルしたdbをアプリに配置できます。

で365行の文字列配列を定義する場合はstring.xml、コードを追加してこれを行うことができます

<string-array name="my_quotes_array">
    <item>Live or exist</item>
    <item>Quote 2</item>
    <item>Quote 3</item>
    <item>Quote 4</item>
    <item>Quote 5</item>
     ....etc., one line per day....
 </string-array>

strings.xml

しかし、これは良い解決策ではないと思います

于 2012-12-31T03:05:24.500 に答える
2

リソースを使用する場合:

Resources res = getResources();
String[] quoteTexts = res.getStringArray(R.array.quotes_array);
quoteTexts[dayNumber]..<---- gives you your text

リソース ファイル内:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="quotes_array">
    <item>I am rich</item>
    <item>Quote 2</item>
    <item>Quote 3</item>
     ....365 .... times....
 </string-array>
</resources>
于 2012-12-31T02:26:21.903 に答える
0

この文字列のセットが将来変更されない場合は、静的クラスとして保存することをお勧めします。XMLパーサーは、解析のために追加の(静的クラスよりもはるかに多くの)時間とリソース(メモリ、CPU)を必要とし、SQLiteは追加の時間、接続を作成するためのリソースなどを必要とするため.

しかし、XML の有機的なデータの方が見栄えがよくなります (より論理的で、より開通性があります)。

Raw リソースと SQLite データベースの比較も参照してください

于 2012-12-31T02:52:30.033 に答える