Notice
Recent Posts
Recent Comments
Link
투케이2K
525. (Android/Java) [유틸 파일] toastLongNormal : 커스텀 토스트 메시지 디자인 변경 출력 본문
Android
525. (Android/Java) [유틸 파일] toastLongNormal : 커스텀 토스트 메시지 디자인 변경 출력
투케이2K 2023. 3. 28. 20:19[개발 환경 설정]
개발 툴 : AndroidStudio
[소스 코드]
==============================================
[drawable >> custom_normal_toast_bg.xml]
==============================================
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 테두리 부분 -->
<stroke
android:width="3dp"
android:color="#003399" />
<!-- 배경색 부분 -->
<solid
android:color="#003399" />
<!-- 패팅 부분 -->
<padding
android:left="15dp"
android:bottom="15dp"
android:right="15dp"
android:top="15dp" />
<!-- 테두리 모서리 부분 둥글게 설정 -->
<corners
android:radius="30dp" />
</shape>
==============================================
[layout >> custom_normal_toast.xml]
==============================================
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/toast_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="17dp"
android:textStyle="normal"
android:textColor="#ffffff"
android:background="@drawable/custom_normal_toast_bg" />
</LinearLayout>
==============================================
[java source code]
==============================================
// TODO [SEARCH FAST] : [토스트 일반 메시지]
public static void toastLongNormal(Context mContext, String msg){
try {
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
LayoutInflater inflater = LayoutInflater.from(mContext);
View layout = inflater.inflate(R.layout.custom_normal_toast, null);
TextView toast_textview = layout.findViewById(R.id.toast_textview);
toast_textview.setText(String.valueOf(msg));
Toast toast = new Toast(mContext);
//toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); //TODO 메시지가 표시되는 위치지정 (가운데 표시)
//toast.setGravity(Gravity.TOP, 0, 0); //TODO 메시지가 표시되는 위치지정 (상단 표시)
//toast.setGravity(Gravity.BOTTOM, 0, 0); //TODO 메시지가 표시되는 위치지정 (하단 표시)
toast.setDuration(Toast.LENGTH_LONG); //메시지 표시 시간
toast.setView(layout);
toast.show();
}
}, 0);
}
catch (Exception e){
e.printStackTrace();
}
}
반응형
'Android' 카테고리의 다른 글
Comments