我想以对话框
打开活动public class MoveActivity extends Activity {
private ListView list;
private DocAdapter adapter;
private ArrayList<Dictionary<String, String>> mlist;
DatabaseHelper helper;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_move);
list = (ListView) findViewById(R.id.list);
helper = ApplicationClass.getDatabaseHelperInstance();
helper.open(DatabaseHelper.readMode);
mlist = helper.getDocList();
helper.close();
adapter = new DocAdapter(this, mlist);
list.setAdapter(adapter);
}
}
答案 0 :(得分:12)
要在Dialog中使用操作栏,您必须在style.xml中创建一个自定义主题,其父级为“Theme.AppCompat.Light”。
<style name="PopupTheme" parent="Theme.AppCompat.Light">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">false</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateAlwaysHidden</item>
<item name="android:windowActionModeOverlay">true</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowCloseOnTouchOutside">true</item>
<item name="android:windowIsTranslucent">true</item>
</style>
并在您的清单中使用活动代码添加此样式:
<activity
android:name=".MyActivity"
android:configChanges="orientation|keyboardHidden|locale"
android:screenOrientation="portrait"
android:theme="@style/PopupTheme" >
并最后在setConytentView(layoutID)
;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_ACTION_BAR);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND,
WindowManager.LayoutParams.FLAG_DIM_BEHIND);
LayoutParams params = this.getWindow().getAttributes();
params.alpha = 1.0f;
params.dimAmount = 0.5f;
this.getWindow().setAttributes((android.view.WindowManager.LayoutParams) params);
// This sets the window size, while working around the IllegalStateException thrown by ActionBarView
this.getWindow().setLayout(600,900);
setContentView(R.layout.dialog_move);
}
答案 1 :(得分:0)
以AndroidManifest.xml
<activity android:theme="@android:style/Theme.Dialog" />
答案 2 :(得分:-2)
将活动的主题定义为对话框。
<activity android:theme="@android:style/Theme.Dialog" />