AppCompatDialog 를 사용하는 방법을 공유하고자 합니다.
styles.xml 에 아래와 같이 Dialog Style를 커스텀화 할 수 있습니다.
<style name="MyTitleTextStyle">
<item name="android:textColor">@color/black</item>
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Title</item>
</style>
<style name="Dialog" parent="Theme.AppCompat.Dialog">
<item name="android:windowBackground">@color/color_primary</item> <!--Dialog background-->
<item name="android:textColorPrimary">#FFFFFF</item> <!--content text color--><item name="android:windowTitleStyle">@style/MyTitleTextStyle</item> <!--title text style-->
<item name="colorAccent">@color/color_accent</item> <!--Button text color-->
<item name="android:windowNoTitle">false</item>
<item name="android:windowIsFloating">true</item>
</style>
## 윗부분에서 중요한 부분이 windowNoTiltle 속성을 true로 놓게 되면 Dialog에 Title을 설정 하더라도
보이지 않습니다. 참고 하세요.
final AlertDialog.Builder builder;
builder = new AlertDialog.Builder(activity, R.style.Dialog);
builder.setTitle("여기는 타이틀");
builder.setMessage("여기는 메세지");
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// OK 버튼을 눌렀을 때
}
});
builder.setNegativeButton("Cancel",null);
AppCompatDialog dialog = builder.create();
dialog.show();
이렇게 하면 끝입니다^^
아래와 같이 할수도 있으니 참고 하세요^^ (이 부분도 수정하게 되면 올리겠습니다.)
private void showSimpleDialogWithActionBar() { AppCompatDialog dialog = new MenuDialog(this); // Request the support Action Bar window feature dialog.supportRequestWindowFeature(WindowCompat.FEATURE_ACTION_BAR); dialog.setTitle(R.string.dialog_title); dialog.setContentView(R.layout.dialog_content); dialog.show(); }
'나의 플랫폼 > 안드로이드' 카테고리의 다른 글
[Android] App Foreground Background (4) | 2016.02.03 |
---|---|
[Android] java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList.... (3) | 2016.02.01 |
[Android] Half ratingbar (0) | 2016.01.27 |
[Android] Custom TextView not working gravity (0) | 2016.01.22 |
[Android] CustomView에 Attribute 만들기 (0) | 2016.01.22 |