이미지뷰(ImageView)
1. 이미지 뒤에 배경색 넣기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.imageview_1.ImageView_1Activity">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView01"
android:src="@drawable/a"
android:tint="#8800aa00"
/>
</LinearLayout>
<초록색 계열 색상을 넣었습니다.>
2. 3가지 방법을 이용해서 이미지 넣기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.imageview_02.ImageView_02Activity">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imgTiger"
android:src="@color/colorAccent"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imgLion"
android:src="@color/colorPrimary"
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imgSnake"
android:src="@color/colorPrimaryDark"
/>
</LinearLayout>
package org.android.soldesk.imageview_02;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Drawable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
public class ImageView_02Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_view_02);
ImageView imgTiger = (ImageView) findViewById(R.id.imgTiger);
imgTiger.setImageResource(R.drawable.a);
// ImageView imgLion = (ImageView) findViewById(R.id.imgLion);
// imgLion.setImageResource(R.drawable.b);
//
// ImageView imgSnake = (ImageView) findViewById(R.id.imgSnake);
// imgSnake.setImageResource(R.drawable.c);
ImageView imgLion = (ImageView) findViewById(R.id.imgLion);
Drawable drawable = getResources().getDrawable(R.drawable.b);
imgLion.setImageDrawable(drawable);
// ImageView imgTiger = (ImageView) findViewById(R.id.imgTiger);
// Drawable drawable1 = getResources().getDrawable(R.drawable.a);
// imgTiger.setImageDrawable(drawable1);
//
// ImageView imgSnake = (ImageView) findViewById(R.id.imgSnake);
// Drawable drawable2 = getResources().getDrawable(R.drawable.c);
// imgSnake.setImageDrawable(drawable2);
ImageView imgSnake = (ImageView) findViewById(R.id.imgSnake);
Bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.c);
imgSnake.setImageBitmap(bm);
// ImageView imgTiger = (ImageView) findViewById(R.id.imgTiger);
// Bitmap bm1 = BitmapFactory.decodeResource(getResources(),R.drawable.a);
// imgTiger.setImageBitmap(bm1);
//
// ImageView imgLion = (ImageView) findViewById(R.id.imgLion);
// Bitmap bm2 = BitmapFactory.decodeResource(getResources(),R.drawable.b);
// imgLion.setImageBitmap(bm2);
}
}
<주석 처리한거도 풀어서 테스트 해보심 됩니다.ㅎ>
스위치(Switch)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.switch_01.Switch_01Activity">
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switchSound"
android:text="sound"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/txtResult"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
</LinearLayout>
package org.android.soldesk.switch_01;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.CompoundButton;
import android.widget.Switch;
import android.widget.TextView;
public class Switch_01Activity extends AppCompatActivity {
Switch switcher;
TextView txtResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_switch_01);
txtResult = (TextView) findViewById(R.id.txtResult);
switcher = (Switch) findViewById(R.id.switchSound);
switcher.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked)
{
txtResult.setText("ON~~~~~");
Log.i("MyButton", "ON~~~~");
}
else {
txtResult.setText("OFF &&&& ~~~~~~");
Log.i("MyButton", "OFF &&&& ~~~~~~");
}
}
});
}
}
<Log i를 넣어서 모니터로 확인도 가능하게 해봤습니다.>
4. 버튼 클릭시 이미지 출력
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.imageview_03.ImageView_03Activity">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
>
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/imgTiger"
android:src="@drawable/a"
/>
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/imgLion"
android:src="@drawable/b"
/>
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/imgSnake"
android:src="@drawable/c"
/>
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/imgElephant"
android:src="@drawable/d"
/>
</FrameLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnTiger"
android:text="Tiger"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnLion"
android:text="Lion"
android:layout_weight="2"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnSnake"
android:text="Snake"
android:layout_weight="2"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnElephant"
android:text="Elephant"
/>
</LinearLayout>
</LinearLayout>
package org.android.soldesk.imageview_03;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class ImageView_03Activity extends AppCompatActivity implements View.OnClickListener{
Button btnTiger;
Button btnLion;
Button btnSnake;
Button btnElephant;
ImageView imgTiger;
ImageView imgLion;
ImageView imgSnake;
ImageView imgElephant;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_view_03);
btnTiger = (Button) findViewById(R.id.btnTiger);
btnLion = (Button) findViewById(R.id.btnLion);
btnSnake = (Button) findViewById(R.id.btnSnake);
btnElephant = (Button) findViewById(R.id.btnElephant);
imgTiger = (ImageView) findViewById(R.id.imgTiger);
imgLion = (ImageView) findViewById(R.id.imgLion);
imgSnake = (ImageView) findViewById(R.id.imgSnake);
imgElephant = (ImageView) findViewById(R.id.imgElephant);
btnTiger.setOnClickListener(this);
btnLion.setOnClickListener(this);
btnSnake.setOnClickListener(this);
btnElephant.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId())
{
case R.id.btnTiger:
imgTiger.setVisibility(View.VISIBLE);
imgLion.setVisibility(View.INVISIBLE);
imgSnake.setVisibility(View.INVISIBLE);
imgElephant.setVisibility(View.INVISIBLE);
break;
case R.id.btnLion:
imgTiger.setVisibility(View.INVISIBLE);
imgLion.setVisibility(View.VISIBLE);
imgSnake.setVisibility(View.INVISIBLE);
imgElephant.setVisibility(View.INVISIBLE);
break;
case R.id.btnSnake:
imgTiger.setVisibility(View.INVISIBLE);
imgLion.setVisibility(View.INVISIBLE);
imgSnake.setVisibility(View.VISIBLE);
imgElephant.setVisibility(View.INVISIBLE);
break;
case R.id.btnElephant:
imgTiger.setVisibility(View.INVISIBLE);
imgLion.setVisibility(View.INVISIBLE);
imgSnake.setVisibility(View.INVISIBLE);
imgElephant.setVisibility(View.VISIBLE);
break;
}
}
}
<아래 버튼을 클릭하면 이미지가 나옵니다.>
EditText
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.edittext_01.EditText_01Activity">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/search"
android:hint="search!!"
android:imeOptions="actionSend"
android:inputType="text"
/>
</LinearLayout>
package org.android.soldesk.edittext_01;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.inputmethod.EditorInfo;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class EditText_01Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_edit_text_01);
final EditText editText = (EditText) findViewById(R.id.search);
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
boolean handled = false;
if (actionId == EditorInfo.IME_ACTION_SEND)
{
Toast.makeText(getApplicationContext(), editText.getText(), Toast.LENGTH_SHORT).show();
handled = true;
}
return false;
}
});
}
}
체크박스(CheckBox)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.checkbox_03.CheckBox_03Activity">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkbox_meat"
android:text="고고기"
android:onClick="onCheckboxClicked"
/>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkbox_vegt"
android:text="야채채채"
android:onClick="onCheckboxClicked"
/>
</LinearLayout>
package org.android.soldesk.checkbox_03;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.Toast;
public class CheckBox_03Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_check_box_03);
}
public void onCheckboxClicked(View view)
{
boolean checked = ((CheckBox)view).isChecked();
switch (view.getId())
{
case R.id.checkbox_meat:
if(checked)
Toast.makeText(getApplicationContext(),
"고기 선택",Toast.LENGTH_SHORT).show();
else
Toast.makeText(getApplicationContext(),
"고기 선택 해제",Toast.LENGTH_SHORT).show();
break;
case R.id.checkbox_vegt:
if(checked)
Toast.makeText(getApplicationContext(),
"야채 선택",Toast.LENGTH_SHORT).show();
else
Toast.makeText(getApplicationContext(),
"야채 선택 해제",Toast.LENGTH_SHORT).show();
break;
}
}
}
테이블 레이아웃(Tablelayout)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="org.android.soldesk.tablelayout_01.Tablelayout_01Activity">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="1"
/>
<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="2"
/>
<Button
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="3"
/>
<Button
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="4"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/button6"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="5"
/>
<Button
android:id="@+id/button7"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="6"
/>
<Button
android:id="@+id/button8"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="7"
/>
<Button
android:id="@+id/button9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="8"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/button5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="9"
/>
<Button
android:id="@+id/button10"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="0"
/>
<Button
android:id="@+id/button11"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="%"
/>
<Button
android:id="@+id/button12"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="C"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/button13"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="+"
/>
<Button
android:id="@+id/button14"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.5"
android:text="-"
/>
<Button
android:id="@+id/button15"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="*"
/>
<Button
android:id="@+id/button16"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="/"
/>
</TableRow>
</TableLayout>
</LinearLayout>
라디오버튼(RadioButton)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/linearBac"
tools:context="org.android.soldesk.radiobutton_01.RadioButton_01Activity">
<RadioGroup
android:id="@+id/radiogroup"
android:layout_width="match_parent"
android:layout_height="253dp"
android:orientation="vertical">
<RadioButton
android:id="@+id/radio_red"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onRadioButtonClicked"
android:text="RED" />
<RadioButton
android:id="@+id/radio_green"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onRadioButtonClicked"
android:text="GREEN" />
</RadioGroup>
<LinearLayout
android:id="@+id/linearBack"
android:layout_width="match_parent"
android:layout_height="280dp">
</LinearLayout>
</LinearLayout>
package org.android.soldesk.radiobutton_01;
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.RadioButton;
import android.widget.Toast;
public class RadioButton_01Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_radio_button_01);
}
public void onRadioButtonClicked(View view)
{
LinearLayout back = (LinearLayout) findViewById(R.id.linearBac);
LinearLayout backk = (LinearLayout) findViewById(R.id.linearBack);
boolean checked = ((RadioButton)view).isChecked();
switch (view.getId())
{
case R.id.radio_red:
if (checked)
{
backk.setBackgroundColor(Color.parseColor("#8800ff00"));
back.setBackgroundColor(Color.parseColor("#88ff0000"));
Toast.makeText(getApplicationContext(),((RadioButton)view).getText(),Toast.LENGTH_SHORT).show();
break;
}
case R.id.radio_green:
if (checked)
{
backk.setBackgroundColor(Color.parseColor("#8800ff00"));
back.setBackgroundColor(Color.parseColor("#88ff0000"));
Toast.makeText(getApplicationContext(),((RadioButton)view).getText(),Toast.LENGTH_SHORT).show();
break;
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/idvalue11"
android:layout_weight="1"
tools:context="org.android.soldesk.radiobutton_02.RadioButton_02Activity">
<LinearLayout
android:id="@+id/idvalue1"
android:layout_width="match_parent"
android:layout_height="250dp"
>
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/radiogroup"
>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radio_red"
android:text="red"
/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radio_green"
android:text="green"
/>
</RadioGroup>
</LinearLayout>
<LinearLayout
android:id="@+id/idvalue2"
android:layout_width="match_parent"
android:layout_height="250dp"
android:orientation="vertical"
>
</LinearLayout>
</LinearLayout>
package org.android.soldesk.radiobutton_02;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.LinearLayout;
import android.widget.RadioButton;
import android.widget.RadioGroup;
public class RadioButton_02Activity extends AppCompatActivity {
LinearLayout ll1;
LinearLayout ll2;
RadioButton rb1;
RadioButton rb2;
RadioGroup rg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_radio_button_02);
ll1 = (LinearLayout) findViewById(R.id.idvalue1);
ll2 = (LinearLayout) findViewById(R.id.idvalue2);
rb1 = (RadioButton) findViewById(R.id.radio_red);
rb2 = (RadioButton) findViewById(R.id.radio_green);
rg = (RadioGroup) findViewById(R.id.radiogroup);
rg.setOnCheckedChangeListener(new handler(this));
}
/*public void onRadioButtonClicked(View view)
{
boolean checked = ((RadioButton)view).isChecked();
LinearLayout value1 = (LinearLayout)findViewById(R.id.idvalue1);
LinearLayout value2 = (LinearLayout)findViewById(R.id.idvalue2);
RadioGroup radiogroup = (RadioGroup)findViewById(R.id.radiogroup);
switch (view.getId())
{
case R.id.radio_red:
if(checked)
{
Toast.makeText(getApplicationContext(),((RadioButton)view).getText(),
Toast.LENGTH_SHORT).show();
value1.setBackgroundColor(Color.RED);
radiogroup.setBackgroundColor(Color.BLUE);
value2.setBackgroundColor(Color.BLUE);
break;
}
case R.id.radio_green:
if(checked)
{
Toast.makeText(getApplicationContext(),((RadioButton)view).getText(),
Toast.LENGTH_SHORT).show();
value1.setBackgroundColor(Color.GREEN);
radiogroup.setBackgroundColor(Color.YELLOW);
value2.setBackgroundColor(Color.YELLOW);
break;
}
}
}*/
}
package org.android.soldesk.radiobutton_02;
import android.graphics.Color;
import android.support.annotation.IdRes;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
/**
* Created by Mun_nam on 2017-03-20.
*/
class handler implements RadioGroup.OnCheckedChangeListener {
RadioButton_02Activity aaa = null;
public handler(RadioButton_02Activity kkk) {
aaa=kkk;
}
@Override
public void onCheckedChanged(RadioGroup group, @IdRes int checkedId) {
switch (checkedId)
{
case R.id.radio_red:
aaa.ll1.setBackgroundColor(Color.parseColor("#88ff0000"));
aaa.ll2.setBackgroundColor(Color.parseColor("#8800ff00"));
Toast.makeText(aaa.getApplication(),aaa.rb1.getText().toString(),Toast.LENGTH_SHORT).show();
break;
case R.id.radio_green:
aaa.ll1.setBackgroundColor(Color.parseColor("#88aaff44"));
aaa.ll2.setBackgroundColor(Color.parseColor("#883366dd"));
Toast.makeText(aaa.getApplication(),aaa.rb2.getText().toString(),Toast.LENGTH_SHORT).show();
/* Toast.makeText(aaa.getApplicationContext(),((RadioButton)view).getText(),
Toast.LENGTH_SHORT).show();*/
break;
}
}
}
'안드로이드(Android)' 카테고리의 다른 글
7. 그리드뷰(GridView), 옵션메뉴(OptionMenu), 콘텍스트 메뉴(ContextMenu), 팝업메뉴(PopupMenu) (0) | 2017.03.22 |
---|---|
6. 스크롤뷰(ScrollView), 스피너(spinner), 이미지 주소 삽입, 리스트뷰(ListView) (0) | 2017.03.21 |
4. Margin_Padding, Checkbox(체크박스), Layout(레이아웃), Toggle(토글), radioButton(라디오버튼) (0) | 2017.03.17 |
3. 버튼(Button) (0) | 2017.03.16 |
2. 폰트 크기 바꾸기, 이미지 삽입, 라이프 사이클, 텍스트뷰(TextView) (0) | 2017.03.15 |