Android - dodawanie obrazu w przeglądarce internetowej HTML
Ok, więc obraz, którego używam nazywa się test.png i mam klasę java (Cherry.java) i klasę xml (cherry.xml). Mam także plik html w folderze / res / raw o nazwie htmltest.html . Próbuję zrobić to, gdy użytkownik kliknie przycisk na poprzedniej stronie, a następnie przeniesie go do pliku cherry.xml, wszystko to jest przeglądarka internetowa. Teraz w klasie java otwieranie pliku htmltest i pliku html jest zwykłym układem opartym na sieci. Chcę wyświetlać obrazy w pliku html, aby obraz znajdował się w folderze drawable lub coś podobnego bez konieczności korzystania z Internetu. (nie chcę korzystać z uprawnień do internetu). Poniżej znajduje się kod dla 3 plików, które mam.
cherry.xml
<WebView
android:id="@+id/webviewHelp"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
Cherry.java
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
public class Cherry extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cherry);
WebView webview = (WebView) findViewById(R.id.webviewHelp);
webview.loadData(readTextFromResource(R.raw.htmltest), "text/html", "utf-8");
}
private String readTextFromResource(int resourceID)
{
InputStream raw = getResources().openRawResource(resourceID);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
int i;
try
{
i = raw.read();
while (i != -1)
{
stream.write(i);
i = raw.read();
}
raw.close();
}
catch (IOException e)
{
e.printStackTrace();
}
return stream.toString();
}
}
htmltest.html
<html>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
<h2>Pictures</h2>
<img border="0" src="file:///android_drawable/test.png" alt="nothing" width="304" height="228" />
</body>
</html>
Więcej pytań wystarczy, a ja odpowiem tak szybko, jak to możliwe. Wszystko działa dobrze, tylko obrazy, których nie mogę wyświetlić.