アプリでHoloEverywhereライブラリのdevブランチを使用しようとしています。これはまだ開発中であることを理解しましたが、デモは問題なく機能しているようですので、試してみます。
マニフェストのアクティビティにandroid:theme = "@ style/Holo.Theme.Sherlock.Light"を入れました。アクティビティの構造は、フラグメントを使用していることです。1つはリストで、もう1つは単なるフラグメントです。ActionBarはHoloに問題なく見えます。
SherlockFragmentActivityをSActivityに、FragmentをSFragmentに変換しました。付属のデモアプリをチェックインしたのと同じです。SFragmentでこのコードブロックを使用してダイアログを開きます。
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("Work in Progress")
.setView(inflater.inflate(R.layout.extra_input))
.setIcon(R.drawable.icon);
builder.setPositiveButton("Positive", null);
builder.setNegativeButton("Negative", null);
builder.setNeutralButton("Neutral", null);
builder.show();
ダイアログがポップアップし、OSのAlertDialogのようになり、extra_inputレイアウト内のEditTextがHoloとして表示されます。ProgressDialogもOSのテーマで表示されます。
これは私が誤ってライブラリを実装したことだと思いました。問題はそれを正しく行う方法ですか?
編集:解決しました。android.app.AlertDialogの代わりにcom.WazaBe.HoloEverywhere.app.AlertDialogを使用する必要があります。愚かな私。