スペイン語と英語の両方が表示されるようにアプリをローカライズしようとしています。1 つの例外を除いて、ほとんどのローカリゼーションを把握しました。ロケールを追加してアプリを翻訳できるように、res/raw フォルダーに移動したいアプリの質問をリストした .xml ファイルがあります。
(getResources().getString(R.string."") を使用して /res からほとんどの文字列を呼び出すことができたので、ほとんどの場合、これは簡単でした。ただし、現在の引数に対してこの呼び出しを行うのは困難です。
res/raw/"".xml に xml があります
私は現在アセットマネージャーを使用して、質問の.xmlを取得しています
public static List<Question> readQuestions(AssetManager assetManager){
ArrayList<Question> questionArrayList = new ArrayList<Question>();
try{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(assetManager.open("questions.xml"));
doc.getDocumentElement().normalize();
NodeList nodeLst = doc.getElementsByTagName("question");
for(int s=0; s<nodeLst.getLength(); s++){
raw フォルダーを呼び出して .xml を取得する方法を知っている人はいますか?
編集:::
入力ストリームにコードを利用しようとしていますが、シンボル「コンテキスト」を解決できないというコンテキストでエラーが発生します
public static List<Question> readQuestions(AssetManager assetManager){
ArrayList<Question> questionArrayList = new ArrayList<Question>();
try{
InputStream in = context.getResources().openRawResource(R.raw.questions);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(in);
NodeList nodeLst = doc.getElementsByTagName("question");