Android 프로 그래 밍 은 제목 에 표 시 된 진행 표시 줄 기능 을 실현 합 니 다.
오늘 은 안 드 로 이 드 에서 Activity 제목 에 표 시 된 진도 바 를 배 워 보 겠 습 니 다.이 예 에서 우 리 는 AsyncTask 에 관 한 지식 도 많이 배 울 수 있다.
(1)화면 에 표시 할 그림 4 장 img 01,img 02,img 03,img 04 준비
(2)Activity 의 레이아웃 파일 activitymain.xml 에서 선형 레이아웃 LinearLayout 만 정의 하고 id 를 설정 합 니 다.코드 는 다음 과 같 습 니 다.
<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/main_layout">
</LinearLayout>
(3)자바 코드 부분 은requestWindowFeature(Window.FEATURE_PROGRESS);
문 구 를 통 해 Activity 제목 표시 줄 을 진도 있 는 스타일 로 설정 한 다음 에 MyTask 대상 을 예화 하고 시작 합 니 다.코드 는 다음 과 같 습 니 다.
public class MainActivity extends Activity {
// id
private int[] imageIds = { R.drawable.img01, R.drawable.img02,
R.drawable.img03, R.drawable.img04 };
private LinearLayout mainLayout;
/**
* Activity
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//
requestWindowFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.activity_main);
mainLayout = (LinearLayout)findViewById(R.id.main_layout);
// MyTask
new MyTask().execute();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
/**
* AsyncTask MyTask
*/
class MyTask extends AsyncTask<Void, Integer, LinearLayout>{
/**
* doInBackground()
*/
@Override
protected void onPreExecute() {
super.onPreExecute();
//
setProgressBarVisibility(true);
}
/**
*
*/
@Override
protected LinearLayout doInBackground(Void... params) {
LinearLayout ll = new LinearLayout(MainActivity.this);
ll.setOrientation(LinearLayout.VERTICAL);
ll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
for(int i=1; i<5; i++){
ImageView iv = new ImageView(MainActivity.this);
iv.setLayoutParams(new LayoutParams(200, 100));
iv.setImageResource(imageIds[i-1]);
ll.addView(iv);
new Thread(){
public void run() {
try {
// 20
Thread.sleep(20);
} catch (Exception e) {
e.printStackTrace();
}
};
}.start();
// , onProgressUpdate()
publishProgress(i);
}
return ll;
}
/**
*
*/
@Override
protected void onProgressUpdate(Integer... values) {
super.onProgressUpdate(values);
// 0-10000, 2500,values[0] 1,2,3,4
setProgress(values[0] * 2500);
}
/**
*
*/
@Override
protected void onPostExecute(LinearLayout result) {
super.onPostExecute(result);
mainLayout.addView(result);
}
}
}
안 드 로 이 드 프로젝트 를 오른쪽 단추 로 실행 합 니 다.효 과 는 다음 과 같 습 니 다.진도 조 가 실 행 된 후 인터페이스 에 네 장의 그림 이 표 시 됩 니 다.
첨부:전체 인 스 턴 스 코드 는 여 기 를 클릭 하 십시오본 사이트 다운로드
더 많은 안 드 로 이 드 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.,,,,,,,
본 고 에서 말 한 것 이 여러분 의 안 드 로 이 드 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.