Dialog Dim 제거하기

Posted by ITPangPang
2016. 11. 8. 21:41 안드로이드(android)/대화상자(Dialog)


Dialog Dim 제거하기



이번에는 Dialog의 Dim 효과를 제거해보도록

    하겠습니다.


ㆍ 저는 나름 많이 사용하는 부분이고, 코드가 한줄밖에

    안되서 처음 봤을때 바로 포스트잇에 써서 모니터에 

    붙여서 외웠던 부분입니다.



Dim?


Dialog Dim 없애기.

한국말로 하면 뭐라고 해야할까요

떠오르질 않네요..


어쨋든 Dim은 이것입니다.


이렇게 팝업창을

띄웠을때 팝업창 뒤에

깔려있는 View를 흐릿하게

보여주는 효과입니다.


제거 하는 방법은

간단합니다.


Dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);


이렇게 써주면 됩니다.

그럼 결과는?



이렇게 된답니다!


간단하지만 코드 올리면서

마치도록 하겠습니다

(모든 Dialog 다 가능합니다,

ProgressDialog, CustomDialog 등)


public class MainActivity extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button btn = (Button)findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
showDialog();
}
});
}

private void showDialog()
{
AlertDialog.Builder myDialogBuilder = new AlertDialog.Builder(MainActivity.this);
myDialogBuilder.setTitle("이것은 타이틀");
myDialogBuilder.setMessage("이것은 메세지");
AlertDialog myDialog = myDialogBuilder.create();
myDialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
myDialog.show();
}
}


끝!