2012-08-31 3 views
1

I 애셋 폴더 안에 html 파일이있는 애플리케이션이 있습니다. 사용자가 버튼을 클릭하면 안드로이드 애플리케이션 활동 내부에서 단추의 내용이 문자열에 입력되고 html 파일 내부의 문자열에 문자열을 전달하기를 원합니다. 단추의 내용을 가져와 내가 할 수있는 활동 내부의 문자열로 전달합니다. 버튼에서 가져온 문자열을 어떻게 가져 와서 내 자산 폴더의 html 파일에 전달할 수 있는지 알고 싶습니다.안드로이드 액티비티에서 html 내부 애셋 폴더의 문자열로

답변

0

버튼 푸시를 기반으로 다른 데이터로 HTML 파일을 표시하려고합니까? HTML 파일에서 % s 또는 % d와 $ 1 ... $ n을 사용하면 여러 번 대체 할 수 있습니다.

$ 2 %의 새 $ 2 % 초가 있습니다.

의사 코드

unReadThings이 숫자 getHtmlFromAssets (myfile.html에, unReadThings, 일) 및 가지 문자열입니다.

의미가 있습니까?

개념적으로 (당신이 HTML을 사용할 것입니다하지만) : http://mobile.tutsplus.com/tutorials/android/android-sdk-format-strings/

또는 덜 안드로이드 특정을 : http://javarevisited.blogspot.com/2011/12/java-string-replace-example-tutorial.html

+0

실제로 하나의 웹 사이트에서 응용 프로그램으로 문자열을 호출하고 있습니다. 문자열을 HTML 파일에 표시하고 싶습니다. – Christian

+0

그럼 내가 제안한 것은 여전히 ​​효과가 있어야합니다. 대체 $ 1 .. $ n의 위치를 ​​기반으로 문자열 교체를 수행하는 중일뿐입니다. 유형은 % d (숫자) 또는 % s (문자열)입니다.솔직히 안드로이드에 내장 된 것을 우회하여 자신의 것을 고안 할 수 있습니다. $ FIRST_NAME $ 다음에 $ FIRST_NAME $ 또는 $ WHATEVER_YOU_WANT $ 및 $ AS $ $ MANY $ $ AS $$ YOU $ $ WANT $를 대체하기위한 간단한 문자열 대체를 수행하십시오. 많은 메시징 응용 프로그램을 사용하면 보낼 텍스트 메시지의 이름을 대체 할 수 있습니다. –

+0

사례를 얻을 수 있을까요? 나는 당신이 이것으로 어디로 가고 있는지를 일종의 알고 있지만 솔직히 이것을하는 방법을 모르겠다. 나는 HTML과 PHP에 상당히 익숙하다. – Christian

0

리소스 (자산 포함)는 읽어야합니다. raw 파일을 열고 anim 파일을 호출하면 String xml 파일에서 문자열을 가져올 수 있습니다. 그러나 은 리소스에을 쓸 수 없습니다.

AssetsManager으로 문서 상태 :

이 클래스는 개방에 당신을 수있는 낮은 수준의 API를 제공하고 원시 파일을 읽을 바이트의 간단한 스트림으로 응용 프로그램과 함께 번들로 제공되어.

이제 어떻게해야할까요? other types of Storage Options을 살펴 보시기 바랍니다. 귀하의 경우, 나는 을 강력하게으로 제안하면 Using the Internal Storage을 제안합니다.

+0

:

WebView Wv = (WebView) findViewById(R.id.webView); Wv.getSettings().setJavaScriptEnabled(true); JavaScriptInterface myJavaScriptInterface = new JavaScriptInterface(this); Wv.getSettings().setJavaScriptEnabled(true); Wv.addJavascriptInterface(myJavaScriptInterface, "AndroidFunction"); Wv.loadUrl("file:///android_asset/index.html"); 

다음 클래스 myJavaScriptInterface

class JavaScriptInterface { Context mContext; int tpressure; JavaScriptInterface(Context c) { mContext = c; tpressure=0; } public int Pressure(){ return tpressure++; } 

}

이 샘플 HTML 파일이 것을 만들 HTMLPost와 같은 것을 사용하고 html 파일에 데이터를 게시하는 방법은 어떻습니까? – Christian

+0

자산의 html 파일을 의미합니까? 당신은 할 수 없습니다. – iTurki

0

addJavaScriptInterface 방법은 우리가 당신의 안드로이드 XML보기 또는 그 반대로 웹 페이지에서 값을 전달하는 데 도움이됩니다. 당신은 당신의 웹 페이지 을 형성 활동 클래스 메서드를 호출 할 수 있습니다 만들 :

 <head> 
      <title>jQuery Mobile page</title> 
    <script src="jquery-1.9.1.min.js"></script> 
    <script src="jquery.mobile-1.3.2.min.js"></script> 
<link rel="stylesheet" type="text/css" href="jquery.mobile-1.3.2.css" /> 

    <script type="text/javascript"> 
      $(document).ready(function() { 
     setInterval(function() { 
     $("#tire1").html(AndroidFunction.Pressure()) 
      }, 2000); 
      }); 
    </script> 
</head> 
<body>   
    <div id="some"> 
    Tire Pressure: 
</div> 
    <div id="tire1"> 
    0 
</div> 

</body>