안드로이드 개발 질문/답변
(글 수 45,052)
배너 역할을 하는 플리퍼를 작성중입니다..
약 3개의 이미지가 출력되며
각각의 이미지가 바뀔때 어느 특정 이미지를 클릭할경우
그에 해당하는 사이트에 연결하는것을 구현중인데요..
OnClickListener 도 이용해보고
OnTouchListener 도 이용해봤는데요..
플리퍼 자체에 클릭 이벤트가 발생했을경우
홈피에지로 연결하는것 까진 성공했는데..
바뀌는 그림의 ID 를 받아와서 각각의 사이트를 부여해버리니깐..
작동을 안하네요;; 그냥 계속 그림만 바뀌고.. 사이트로 연결하는 배너의 역할을 전혀 안합니다..
import android.app.*; import android.content.*; import android.os.*; import android.view.*; import android.view.View.*; import android.webkit.*; import android.widget.*;
public class TestFlipper extends Activity {
ViewFlipper mFlipper;
WebView mWeb;
Intent intent;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mFlipper = (ViewFlipper) findViewById(R.id.mFlipper);
mWeb = (WebView) findViewById(R.id.mWebView);
mFlipper.setFlipInterval(2000);
mFlipper.startFlipping();
mFlipper.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(v.getId())
{
case R.id.IMG_mUniversity:
mWeb.loadUrl("http://www.naver.com");
break;
case R.id.IMG_mBlog:
mWeb.loadUrl("http://www.daum.net");
break;
case R.id.IMG_mandroidpop:
mWeb.loadUrl("http://www.androidpub.com/");
break;
}
return false;
}});
}
}
Flipper 자체에 모션이벤트가 떨어졌을때
이미지와는 상관없이 특정 사이트에 연결하는거는 되는데..
이미지의 ID에 따라 각각 다른 사이트에 연결하는 방법을 모르겠네요;;




자문 자답입니다.. 혹시 저와 같은 고민을 하시는분이 있을수도 있으니..
Img_1 = (ImageView) findViewById(R.id.IMG_mUniversity); Img_2 = (ImageView) findViewById(R.id.IMG_mBlog); Img_3 = (ImageView) findViewById(R.id.IMG_mandroidpop); mClick =new OnClickListener(){@Override public void onClick(View v) { switch(v.getId()) { case R.id.IMG_mUniversity : mWeb.loadUrl(http://www.naver.com); break; case R.id.IMG_mBlog : mWeb.loadUrl("http://www.daum.net"); break; case R.id.IMG_mandroidpop : mWeb.loadUrl("http://www.http://www.androidpub.com/"); break; } }}; Img_1.setOnClickListener(mClick); Img_2.setOnClickListener(mClick); Img_3.setOnClickListener(mClick); }요렇게 하시면 각 이미지를 클릭했을때 해당 사이트로 넘어가게 됩니다.
개인적으로 판단했을때 Flipper 이녀석은 그저 이미지 효과를 주는것 밖에는 안되는것 같습니다(?)
아니면.. 말구요..ㅠㅠ