웹뷰를 통해서 메인화면을 호출하고 서브페이지를 또다른 웹뷰를 생성하여 처리하려고 합니다

271 views
Skip to first unread message

앱앱앱

unread,
Feb 1, 2012, 10:17:20 AM2/1/12
to 앱스프레소
안녕하세요^^?

웹뷰를 생성해서 메인화면을 불러오도록 했습니다.
그런데 메인에서 호출하는 화면은 새로운 웹뷰를 생성해서 호출하고 싶은데
가능한가요?

그러니까 질문의 요지는 웹뷰를 2개이상 생성이 가능한지 궁금합니다

그리고 생성된 웹뷰를 슬라이드 형태로 나타나도록 transition 효과를 줄수 있는지도 궁금합니다

네이티브앱 개발을 공부하다가 컨트롤뷰를 제어하는게 너무 어려워서 하이브리드앱으로 왔는데 이것도 만만치 않네요...;;

많은 도움 부탁드립니다^^;

존슨

unread,
Feb 1, 2012, 7:50:10 PM2/1/12
to appspr...@googlegroups.com
웹뷰를 생성해서 메인화면을 불러오도록 했습니다.
ax.ext.ui.addWebView 를 이용해 웹뷰를 생성했다는 건가요?

앱스프레소의 화면은 기본적으로 하나의 웹뷰입니다.
여기에 필요한 경우 ax.ext.ui.addWebView 를 이용해 웹뷰를 추가가능 하지만 하나의 웹뷰만 추가할 수 있습니다.
=> "기본웹뷰" + "하나의 서브웹뷰" 가 가능합니다.

앱 제작시 가능한 기본 웹뷰 내에서 페이지들을 처리하길 권장합니다.
페이지전환 효과는 css를 이용해 처리할 수 있습니다.

참고로 아직 샘플앱을 설치해 보지 않으셨다면 단말에 설치해 보시기 바랍니다.

앱앱앱

unread,
Feb 1, 2012, 10:28:03 PM2/1/12
to 앱스프레소
네, ax.ext.ui.addWebView 를 이용해서 메인 웹뷰를 만들어 기존에 개발된 모바일웹을 보여주도록 처리했구요
이 웹뷰에서 특정 메뉴를 클릭시 새로운 ax.ext.ui.addWebView 를 이용해서 웹뷰를 생성하려고 합니다.

답변주신 것으로 봐서는 이렇게까지는 생성이 가능하시단 말씀 같은데요 맞나요^^?

그런데. 이부분에서 생성이 안되는것 같아서요...

메인웹뷰내에서 클릭하는 것은 loadCallback 으로 후킹을 하는것으로 처리를 했고 이부분은 잘 되는것 같습니다


function webView1() {

var loadCallback = function(handle,
url){
if(url.indexOf('http://
HOOKING_URL_FOR_REMOVING_WEBVIEW')!= 0){
return;
}
webView2(url);
};
var opts = {
'top': 43,
'left': 0,
'width': 320,
'height': 417,
'load': loadCallback
};
var url="http://www.appspresso.com";
var handle = ax.ext.ui.addWebView(url,
opts);
}


function webView2(url) {

var loadCallback = function(handle,
url){
if(url.indexOf('http://
HOOKING_URL_FOR_REMOVING_WEBVIEW')!= 0){
return;
}

ax.ext.ui.removeWebView(function(){},handle);
};
var opts = {
'top': 43,
'left': 0,
'width': 320,
'height': 417,
'load': loadCallback
};
var handle = ax.ext.ui.addWebView(url,
opts);
}


이런식으로 처리를 하려고 하거든요...

그리고 이렇게 생성된 웹뷰에 css 를 이용해 페이지 전환효과를 줄수있느냐는 두번째 질문이구요

답변부탁드립니다
감사합니다^^

존슨

unread,
Feb 1, 2012, 11:16:45 PM2/1/12
to appspr...@googlegroups.com
네, ax.ext.ui.addWebView 를 이용해서 메인 웹뷰를 만들어 기존에 개발된 모바일웹을 보여주도록 처리했구요
"기존에 개발된 모바일웹" 이란게 외부 인터넷 페이지인가요?
앱스프레소는 외부 인터넷 페이지에서는 deviceapi를 사용하실 수 없습니다.
=> 외부 모바일웹 에서는 ax.ext.ui.addWebView를 호출할 수 없다는거죠.

> 그리고 이렇게 생성된 웹뷰에 css 를 이용해 페이지 전환효과를 줄수있느냐는 두번째 질문이구요
ax.ext.ui.addWebView로 생성되는 웹뷰 자체는 페이지 전환효과를 줄 수 없습니다.
생성된 웹뷰 안의 콘텐츠 에서는 css 애니메이션이 동작합니다.

앱앱앱

unread,
Feb 1, 2012, 11:52:07 PM2/1/12
to 앱스프레소
아, 그렇군요...;;
그럼 웹연동으로 처리하려면 ax.ext.net.get 등으로 처리를 해야겠군요
답변 감사합니다!
Reply all
Reply to author
Forward
0 new messages