테이블레이아웃 적용한 계산기 앱
RelativeLayout이 적용된 계산기 앱을 만들었는데
이번에는 테이블레이아웃을 적용하였습니다.
추가된 부분은 버튼을 눌려서 숫자를 입력하는 것입니다.
그리고 에디트텍스트에 커서를 위치하지 않고 그냥 클릭했을 때
토스트메시지가 나오게 설정하였습니다.
----------------------------------------------------------------------------------
코딩은 메모장으로 MainActivity.java, activity_main.xml을 첨부파일로 올렸습니다.
----------------------------------------------------------------------------------
테이블레이아웃의 경우
<TableLayout ~~~~~~~~~>
<TableRow> //행을 구분하는 역활
내부에 위젯을 넣는데 이때 위젯의 개수가 열의 개수이다
</TableRow>
</TableLayout>
TableLayout에서 적용하는 속성은 layout_span으로 열을 합쳐주는 기능을 하는데
<TableRow>에 5개의 버튼이 있는데 5개의 열을 하나로 합쳐 EditText를 적용하였습니다.
----------------------------------------------------------------------------------
연산을 하는 버튼은 중복되는 부분이라 일부분만 가져왔습니다.
각각의 에디트텍스트에서 입력한 숫자를 num1,2에 저장한 후 정수형으로 변환하여 연산을 합니다.
----------------------------------------------------------------------------------
원래는 하나씩 findViewById()를 해야하지만 중복되는 부분이라서 for문을 이용하였습니다.
isFocused()메소드를 이용하여 커서가 에디트텍스트에 있는지를 확인하고 텍스트를 가져옵니다.
num1 = edit1.getText().toString + bt[index].getText().toString()으로 작성한 이유는
하나의 숫자를 입력하고 다음 숫자가 입력할때
에디트텍스트에 입력된 숫자에 이어 붙이기 위해서 입니다.
'Android' 카테고리의 다른 글
안드로이드 예제 - AutoCompleteTextView, MultiAutoCompleteTextView (0) | 2016.09.23 |
---|---|
안드로이드 예제 - 날짜/시간 예약 앱 만들기 (3) | 2016.09.07 |
안드로이드 예제 - 중첩 리니어레이아웃(LinearLayout) (0) | 2016.09.03 |
안드로이드 - for문을 이용하여 위젯 등록, 리스너 초기화하기 (0) | 2016.09.01 |
안드로이드 예제 - intent 예제 (0) | 2016.08.30 |