3

XMLファイルをから/assetsアプリケーションデータフォルダ(data/data/package.name/files/)にコピーしました。ユーザーが大量のデータを変更できるようになるため、これを行っています。そのデータを内部メモリに保存し、アプリを再起動したときに再度読み込む必要があります。これはすべてうまく機能します。ルートブラウザを使用すると、XMLファイルがデータディレクトリに適切にコピーされていることがわかります。

次に、を使用してこのXMLファイルを拡張する必要がありますLayoutInflater。このファイルにアクセスするにはどうすればよいですか?XmlResourceParserまたはXmlPullParser?_

4

2 に答える 2

2

を使用してそのファイルを膨らませることはできませんLayoutInflater。まず、任意のファイルではなく、レイアウトリソースのみを拡張できます。第二に、最初の段落の説明に基づくと、そもそもレイアウトファイルではありません。

任意のXMLを解析する場合は、DOM、SAX、またはを使用しますXmlPullParser

于 2011-11-19T22:45:24.097 に答える
1

AndroidビューAPIから:

現在、実行時にプレーンXMLファイルに対してXmlPullParserでLayoutInflaterを使用することはできません。

解決策は、前にXMLファイルを前処理することかもしれません。ビルド時にAndroidSDKが行うのと同じ方法でXMLファイルを圧縮する必要があります。

ビューのインフレは、ビルド時に行われるXMLファイルの前処理に大きく依存しています

前処理されたXMLをロードするためにを呼び出しXmlPullParser.setInputてから、XmlPullParserをに渡す必要があると思いますView.inflate。APKにないコンテンツでもこのようなことができるといいのですが。

私はあなたが見つけることができるどんな解決策にも非常に興味があります。プロトタイプを見つけたり作成したりした場合はお知らせください。これは、私のオープンソースアプリのプラグインアーキテクチャを作成するための決定的なステップになります。

于 2012-04-20T02:18:11.450 に答える