오늘은 앱개발 심화주차 과제를 풀면서 알게된 꿀팁? 들을 정리해보려한다.
res/values/strings.xml에 들어가서 app_name을 바꿔주면 된다.
<resources>
<string name="app_name">여기에 앱이름을 쓰세용</string>
</resources>
res/values/themes에 들어가서 <style'>' 안에 <item'>' 을 만들어준다.
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
windowNoTitle은 타이틀바 제거, windowFullscreen은 상태바를 제거해주는 기능이다.
imageView에서 background="@drawable/round"로 처리해준다.
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="@color/white" />
<corners
android:radius="10dp"/>
<stroke
android:width="1dp"
android:color="@color/black" />
</shape>
여기서 shape="rectangle"은 사각형 모양을 지정해준거고,
solid속성은 사각형 내부를 흰색으로 채워준다는 내용이다.
corners는 모서리를 둥글게 만들어준다. 10dp를 더 키울수록 더 둥글게 만들어진다.
stroke는 테두리속성인데 width는 테두리의 두깨, color는 테두리의 색을 나타낸다.
이건 xml파일 안에 textView안에 설정을 해주면 된다.
android:ellipsize="end"
android:maxLines="2"
ellipsize설정은 ...처리를 문자의 끝에 해준다는 소리이다. start
maxLines설정은 해당 textView가 2줄이 넘어가면 그뒤는 ...으로 보이게 해준다는 소리이다.
onkeyDown을 오버라이딩 해줬다.
override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean {
if (keyCode == KeyEvent.KEYCODE_BACK) {
showExitDialog()
return true // 이벤트를 소비하여 기본 동작을 막음
}
return super.onKeyDown(keyCode, event)
}
이 안에서 showExitDialog함수를 호출해주고, 해당 함수 안에 Dialog를 설정해준다.
private fun showExitDialog() {
var builder = AlertDialog.Builder(this)
builder.setTitle("종료")
builder.setMessage("정말 종료하시겠습니까?")
builder.setIcon(R.drawable.chat)
builder.setCancelable(false)
// 버튼 클릭시에 무슨 작업을 할 것인가!
val listener = object : DialogInterface.OnClickListener {
override fun onClick(p0: DialogInterface?, p1: Int) {
when (p1) {
DialogInterface.BUTTON_POSITIVE -> {
finishAffinity()
}
DialogInterface.BUTTON_NEGATIVE -> {
p0?.dismiss()
}
}
}
}
builder.setPositiveButton("확인", listener)
builder.setNegativeButton("취소", listener)
builder.show()
}
확인버튼과 취소버튼 두개를 추가해주었고, 확인버튼 클릭시 앱종료, 취소버튼 클릭시에는 아무일도 일어나지 않게 해줬다.
DemicalFormat을 이용해서 패턴을 지정해줬다.
val myFormatter = DecimalFormat("###,###")
이렇게 패턴을 지정해주고,
price.text = myFormatter.format(mItems[position].productPrice).toString() + "원"
원하는 텍스트에 지정해주면 된다.
format()안에는 Int값을 넣어주면되고, 나는 다른곳에서 선언해둔 데이터를 가져와서 사용했다.
어떤식으로 해야할지 고민됐는데, 검색해보니 view를 만들어주면 쉽게 구현 가능했다.
<View
android:layout_width="2dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:background="#E1DEC1" />
원하는 색으로 background를 지정해주고, 원하는 두깨로 만들어주면 된다.
나는 이렇게 구분선을 만들어주었다.

앱이름바꾸기
상태바제거
타이틀바제거
이미지 라운드처리
...처리
...
앱종료시대화상자
,처리
얇은선추가