마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

하나의 activity으로 여러개의 activity를 만드는 방법이 있나요??

0 추천

하나의 activity를 이용하여 10개 정도의 activity를 생성하려 합니다

 

이 activity에는 텍스트 뷰 2개가 들어가는데

 

이 텍스트 뷰에는 각각 다른 값들이 들어가게 하고 싶고요

 

일단 하나의 activity를 만들었는데

 

이걸 어떻게 여러개로 등록하고 정보를 집어 넣어야 할지를 모르겠네요

 

하나의 엑티비티를 여러개로 등록해서 이것을 다시 Flipper로 구현하려 합니다

package com.nsecurity;
 
import java.util.Vector;
 
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.ViewFlipper;
 
public class MainActivity extends Activity {
 
Vector<String> titlevec = new Vector<String>();
Vector<String> descvec = new Vector<String>();
Vector<String> linkvec = new Vector<String>();
 
NewsContent newscontent = new NewsContent();
 
@Override
protected void onCreate(Bundle savedInstanceState) {
 
super.onCreate(savedInstanceState);
newscontent.execute(null, null, null);
 
while (true) {
try {
Thread.sleep(1000);
if (newscontent.flag == true) {
 
titlevec = newscontent.titlevec;
descvec = newscontent.descvec;
linkvec = newscontent.linkvec;
break;
}
} catch (Exception e) {
 
}
 
}
setContentView(R.layout.activity_main);
 
TextView textTlite = (TextView) findViewById(R.id.textTlite);
TextView textDesc = (TextView) findViewById(R.id.textDesc);
Button btLink = (Button) findViewById(R.id.btLink);
 
textTlite.setText(titlevec.get(0));
textDesc.setText(descvec.get(0));
btLink.setOnClickListener(new OnClickListener() {
 
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_VIEW);
Uri u = Uri.parse(linkvec.get(0));
i.setData(u);
startActivity(i);
}
});
 
}
 
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
 
}
 
 
현재 메인 소스코드는 이렇구요
 
어떻게 해야할까요???
츄몽 (210 포인트) 님이 2013년 6월 25일 질문
츄몽님이 2013년 6월 25일 수정

1개의 답변

0 추천
액티비티를 왜 여러개를 만들려고하는지부터 명확히 알려주시면 제대로된 답변이 나올거같은데요..

액티비티를 만들려고하는 이유가 화면을 여러개로 분할하려고하는건지,

액티비티의 각각의 객체를 나눠서 접근을 달리하겠다는건지..

 

액티비티를 여러개 만든다는게 무슨말인지 이해가잘안가네요..

예를들어서 화면을 여러개 보이게하고싶다 하시면 레이아웃을 여러개 만들면 될것같고..

액티비티 여러개만드는 효과를 액티비티 하나에도 충분히 만들수있을거같은데 목적을 말해주시면 정확한 답변이 나오지않을까 생각됩니다..
기초개발자 (24,060 포인트) 님이 2013년 6월 25일 답변
하나의 엑티비티만 이용하여 똑같은 레이아웃에 기사를 보이려 합니다

그렇기 때문에 기사 개수도 일정하지 않고 똑같은 레이아웃이 여러개 있을 필요가 없다 생각하여 이런 질문을 올리게 되었습니다
츄몽님 그렇게 하실거면 그냥 레이아웃이나 프레그먼트 만드셔서 사용하는게 더 편하고 효율적인데요.
화면 전환이 필요하면 뷰페이저 사용하면 되구요.
제가 지금 완전 초보라 좀 더 자세히 설명 해 주실수 있으신가요??
사실 고수분들이 보시기에도 답변달기가 애매해서 안다는분들이 많을거에요.
정확히 하고자 하시는거에 따라서 얼마든지 방법이 나올수 있는데, 답변하신걸로는 뭘 하고자하는지 이해가 잘안되거든요..
즉 기사 갯수가 일정하지 않고 똑같은 레이아웃이 여러개가 필요없다 라고 한다는게..  
기사갯수가 유동적이고 갯수에 따라 레이아웃에 표시해주고 싶은건가요..?
그렇다면 동적으로 레이아웃을 하나 만들어놓고 소스코드상에서 기사갯수만큼 텍스트뷰를 생성한뒤에 텍스트뷰에 기사내용 박고 레이아웃에 붙이면  되지않을까요?
그리고 액티비티는 하나밖에 생성하지 못하는데 여러개가 필요하다는 것이 어떤의민지 이해가잘안되네요..
액티비티 하나에 화면을 원하는대로 띄울수있는데도 액티비티를 여러개 만들겠다는 의미를 잘 모르겟는..
...