안드로이드 스튜디오
- 이미지뷰 & 토스트 기능 -
이번에는 자신이 원하는 이미지를 띄우는 이미지뷰(ImageView)위젯과 밑에 마치 토스트기에서 토스트가 띵! 하고
올라오듯 텍스트가 올라오는 기능인 Toast기능을 알아볼 것이다.
[ ImageView ]
이미지뷰를 MainActivity에 만들어 보도록 하자.
activity_main.xml 로 들어가서 Text탭에 들어가 만들어 볼 것이다. (물론 Design탭에서 드래그해도 무방)
<ImageView
android:id="@+id/iv_test"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@mipmap/ic_launcher"/>
android:layout 이 부분들은 전에 텍스트뷰나 버튼 등 다른 위젯에서 많이 본 구문이고
android:id 또한 아이디를 부여하는 구문으로 아는 내용일텐데
android:src= "~" 기능은 뭘까?
android:src 이 부분은 링크를 가져오는 구문이다.
그리고 "@mipmap/~" 는 mipmap이라는 폴더 안에 있는 그림파일인 ic_launcher를 가져온다! 라는 의미이다.
참고로 mipmap 폴더는 app->res 폴더 안에 있다.
이러한 방법으로 이미지뷰를 생성할 수 있을 것이다.
< 한가지 추가로 레이아웃을 저 이미지뷰에만 부여하는 것을 해보자면 이렇다. />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<ImageView
android:id="@+id/iv_test"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@mipmap/ic_launcher"/>
</LinearLayout>
layout_width="match_parent" 너비는 화면 꽉 채우고
layout_height="wrap_content" 높이는 이미지뷰 크기에 자동으로 맞춘 레이아웃을 지정해주었다.
그리고 gravity="center"로 지정을 해줌으로써 이미지뷰가 레이아웃 중앙에 위치하게 된다.
다른 것은 gravity="right" 도 있고
그래비티 부분을 안 쓰면 기본값은 left여서 이미지뷰가 왼쪽에 위치한 것을 볼 수 있다. />
[ Toast ]
그럼 이 이미지뷰를 눌렀을 때 토스트 메세지가 뜨도록 명령을 부여해보자
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
//ImageView 선언
ImageView iv_test;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iv_test = (ImageView)findViewById(R.id.iv_test);
iv_test.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "토스트메세지 입니당",Toast.LENGTH_SHORT).show();
}
});
}
}
아 뭔가 토스트 창이 굉장히 길어서 어려워보이지만 차근차근 살펴보자
우선 이제 기본이 되어버린 ImageViw iv_test; 로 선언해 준 다음
iv_test = (ImageView)findViewById(R.id.iv_test); 로 미리 만들어둔 아이디를 불러온 다음
setOnClickListener 함수를 이용해 눌렀을 때 명령한 내용이 나오도록 만들어준다.
Toast.makeText는 토스트의 가장 기본적이면서 가장 많이쓰이는 토스트텍스트 출력 함수이다.
(getApplicationContext(), " 토스트텍스트 내용~", Toast.LENGTH_SHORT).show();
여기서 앞에 getApplicationContext()는 현재 있는 Mainactivity를 나타내며
Toast.LENGTH 부분은 _LONG과 _SHORT가 있는데 말 그대로 시간초를 나타내는 부분인데
SHORT로 함으로써 짧은 시간동안 메세지가 뜨도록 설정한 부분이다.
그리고 꼭 함수 뒤에 .show()를 함으로써 텍스트가 보여지도록 설정해줘야 한다.
빡공하자!!
'안드로이드 스튜디오' 카테고리의 다른 글
| #6 내비게이션 메뉴 (Navigation Menu) 의 구성, 틀 (0) | 2019.02.12 |
|---|---|
| #5 리스트뷰 (ListView) (0) | 2019.02.12 |
| #3 화면 전환하기 (Intent) (0) | 2019.02.11 |
| #2 버튼 & EditText (0) | 2019.02.11 |
| #1 TextView & LinearLayout (0) | 2019.02.10 |