public void onClick(View view){
if(v==trueBtn){
targetBtn.setVisibility(View.VISIBLE);
}else if(v==falseBtn){
targetBtn.setVisibility(View.INVISIBLE);
}
}
TextView
- autoLink
-android:text="가나다라 http://www.naver.com 마바사 a@a.com 아자차카 02-1234-5678"
-android:autoLink="web|email|phone"
//각각의 링크를 사용자가 클릭하면 자동으로 브라우저, 이메일 앱, 전화 앱이 실행된다.
-maxLines
-특정 줄만큼만 출력하기 위해 사용
-android:maxLines="3"
-ellipsize
-android:maxLines="3"
-android:ellipsize='end'
-maxLines로 지정한 줄만큼만 출력할 수 있는데, 이 때 줄임 표시(...)을 사용할 때 사용
ImageView
-src
-화면에 출력할 이미지를 지정함
-android:src="@drawable/sample"
-maxWidth/maxHeight
-뷰의 크기 속성인 layout_width와height를 조정하는 것이 아니라 이미지 자체의 출력 크기를 변경함
-adjustViewBounds와 함께 사용해야함
-adjustViewBounds
-이미지의 크기를 변경할 때 가로세로 비율을 유지할지를 boolean값으로 지정하는 속성
-android:maxWidth="100dp"
-android:maxHeight="100dp"
-android:adjustViewBounds="true"
EditText
-lines
-처음 화면에 보일 때부터 특정 줄만큼 보이게 할 때 사용
-만약 lines="3"으로 지정되면, 처음부터 세로 방향 3줄 입력 크기로 출력되고 더는 늘거나 줄지 않는다.
-입력 창의 크기가 3줄로 고정된다는 것이지 3줄 내에서 스크롤 되어 여러 줄 입력은 가능
-maxLines
-lines와 차이점 -> maxLines="3"으로 지정하더라도 처음 화면에 보일 때는 한 줄 입력 크기로 보임
-사용자가 엔터를 입력하면 아래로 늘어나 최대 3줄까지 늘어난다.
-lines와 동일하게 EditText 내에서 스크롤 되어 여러 줄 입력은 가능
-inputType
1. 글을 입력하기 위해 올라오는 키보드의 모드를 제어
-android:inputType="phone" // 외에 number, textEmailAddress, textPassword등 다양한 속성값 제공
-전화번호를 입력해야하는 창에서는 처음 editText를 눌렀을 때 한글이나 영어가 아닌 숫자가 나오도록!!
2. 사용자에게 한 줄 혹은 여러 줄 입력을 강제 (p124 속성 정리표가 있음)
-android:inputType="text" 로 지정하면 사용자가 한 줄만 입력할 수 있도록 된다.
checkBox
1. isChecked() : 해당 checkBox가 체크된 상태인지를 반환. (true=체크된 상태, false=체크가 안 된 상태)
2. setChecked() : checkbox의 체크 상태를 바꾸기 위한 함수 (매개변수 값을 true->체크 상태)
3. toggle() : 이 함수를 이용하면 현재 checkbox의 상태와 상관없이 반대로 바뀜
checkBox = findViewById(R.id.checkbox);
checkbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked) mBinding.checkbox.setText("is checked");
else mBinding.checkbox.setText("is unChecked");
}
});
RadionButton
-checkbox처럼 체크 상태를 표현하기 위한 뷰 but 여러 개 중 단일 선택을 함!!
-여러 개 중 하나만 선택 가능
1. check() : 매개변수로 체크하고자 하는 RadioButton의 id 값을 주면 해당 RadioButton이 체크된다.
2. clearCheck() : 체크 상태를 해제
3. getCheckedRadioButtonId() : 체크된 RadioButton의 id값을 획득
<RadioGroup
android:~
<RadioButton
android:~
android:~ />
<RadioButton
android:~
android:~ />
</RadioGroup>
같은 RadioGroup으로 묶인 RadioButton 중 하나만 체크 가능
속성
1. clickable
-TextView나 ImageView에 적용
-버튼을 클릭했을 때 나타나는 효과와 동일한 효과를 낸다.
2. visibility
-android:visibility="gone"
-기본값은 true이며, "invisible", "gone"으로 지정하면 화면에 안 보이게 할 수 있음
-"invisible"은 보이지는 않지만 그만큼의 크기를 확보한다(but "gone"은 크기 확보도 x)
public void onClick(View view){
if(v==trueBtn){
targetBtn.setVisibility(View.VISIBLE);
}else if(v==falseBtn){
targetBtn.setVisibility(View.INVISIBLE);
}
}
초기에 특정 뷰 화면을 출력하지 않으려는 의도로 사용 (자리만 확보)
ViewBinding
1. build.gradle 파일에 아래를 추가
android{
//생략 ....
viewBinding{
enable=true
}
}
ex)
-activity_main.xml -> ActivityMainBinding
-item.xml -> ItemBinding
//뷰바인딩 객체 획득
ActivityMainBinding binding = ActivityMainBinding.inflate(getLayoutInflator());
//액티비티 화면 출력
setContentView(binding.getRoot());
//뷰 객체 이용
binding.visibleBtn.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
~
}
});