私はアプリを公開しましたが、最近外国語で100%正しく動作しないことが判明しました。AndroidのEclipseアプリケーションがデータベースのある外国語で正しく動作しない
データベースからカーソルを作成し、返されたデータを操作するまで正しく動作するようです。私は、デフォルトのテキストでグレーアウトされたテキストビューを持っているか、カーソルから返されたものを読み込みます。何が起こっているのかは、それがどちらもしていないということです。代わりに、私が作成したレイアウトにあるテキストを使用します。ここ
コードである:
カーソルアイテム= mDbHelper.fetchItem(mItemId)。
String airline =item.getString(
item.getColumnIndexOrThrow(TripsDbAdapter.KEY_FIELD_FLIGHT_AIRLINE));
TextView itemAirline = (TextView)findViewById(R.id.flight_item_airline);
if(airline==null||airline.equalsIgnoreCase("null")){
itemAirline.setText(R.string.default_carrier);
itemAirline.setTextColor(getResources().getColor(R.color.light_orange));
}else{
itemAirline.setText(item.getString(
item.getColumnIndexOrThrow(TripsDbAdapter.KEY_FIELD_FLIGHT_AIRLINE)));
//itemAirline.setTextColor(getResources().getColor(R.color.white));
}
あなたが見ることができるように、私はと呼ばれるデータベース項目がnullまたは「ヌル」であるかどうかを確認し、それに応じてテキストビューを変更するには、チェックを行います。それはまったく変わらないので、それには達していないようです。英語の携帯電話では、これが完璧に機能していることに注意してください。私のアプリの残りの部分は、この機能以外はフランス語でもうまく動作しているようです。ここで
は私のデータベース呼び出しは、あまりにもそれが必要とされる場合には次のとおりです。
public Cursor fetchItem(long itemId) throws SQLException {
Cursor mCursor =
mDb.query(true, DATABASE_TABLE_ITEMS, COLUMNS, KEY_ITEMID + "=" + itemId, null,
null, null, null, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
UPDATE 私はフランス語に自分の携帯電話を切り替えたときに、私は解析できない日付のLogCatメッセージを取得しています。日付を解析するコードは次のとおりです。
DateFormat df = DateFormat.getDateInstance(DateFormat.LONG);
String itemDate = item.getString(
item.getColumnIndexOrThrow(TripsDbAdapter.KEY_DEP_DATE));
System.out.println("Before PArse Dates");
Date dateObj = df.parse(itemDate);
日付は月、日、年の形式です。だからどこに問題が起こっているのか分かっていますが、それでも理由を理解できません。何か案は?
がにローカライズするLAOUTのですか? –