2017.06.13
5th Class(AM)
* Android 4대 Component
- BroadCast Receiver, Activity, Service, Content Provider
* 명시적 인텐드, 암시적 인텐트
- 명시적 : 동일한 어플리케이션 내에 있는 다른 액티비티를 실행 할 때 사용
- 암시적 : 전화를 걸거나 웹 브라우져 띄울 때 사용
* 인텐트 실행 할 때
- startActivity(intent변수명 입력);
* Activity_Call 을 사용하려면 Permission을 설정해줘야 한다.
* 컬러 참조할 때 사용 하는 법
<res - values - colors.xml>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
<color name="textColor">#0e1e60</color> //추가한 색상
</resources>
* 가로일때 화면과 세로일때 화면 따로따로 디자인 하는 법
- activity_main.xml은 복사한 것, 복사하고 UI 새로 디자인 하면 적용됨
<MainActivity>
package com.oneplus.admin9.class0613;
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.provider.MediaStore;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {
Intent it;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.btnWeb).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
it = new Intent(Intent.ACTION_VIEW, Uri.parse("http://gubonny.tistory.com/"));
startActivity(it);
}
});
findViewById(R.id.btnCam).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
it = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivity(it);
}
});
findViewById(R.id.btnDial).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
it = new Intent(Intent.ACTION_DIAL);
startActivity(it);
}
});
findViewById(R.id.btnDc).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent it = new Intent(Intent.ACTION_CALL, Uri.parse("tel:114"));
if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MainActivity.this,//권한을 요청 할 Activity를 보내주는 것,
new String[]{Manifest.permission.CALL_PHONE},//권한요청 리스트를 보내는 것,
0);//requestCode, 갔다가 다시 돌아올 때 실행되야 하는것,
return;//ocClick 메소드 종료하려고 써 놓은 것,
}
startActivity(it);
}
});
findViewById(R.id.btnNp).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent it = new Intent(MainActivity.this, SubActivity.class);
it.putExtra("Name", "구보니");
startActivity(it);
}
});
}
}
<SubAc~>
package com.oneplus.admin9.class0613;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.CheckBox;
public class SubActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub);
Intent it = getIntent();
it.getStringExtra("Name");
((CheckBox)findViewById(R.id.checkBox)).setText(it.getStringExtra("Name"));
}
}
'노트필기' 카테고리의 다른 글
[Do it 안드로이드] Day 16 - 4 (0) | 2017.06.18 |
---|---|
[Do it 안드로이드] Parcelable 예제 (0) | 2017.06.18 |
[Android] 4th Class (0) | 2017.06.12 |
[Android] 3rd Class (0) | 2017.06.09 |
[Android] 2nd Class (0) | 2017.06.08 |