Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Serge_biceps
0 / 0 / 0
Регистрация: 14.09.2015
Сообщений: 7
1

Переход в WebView от одного локального html файла к следующему через ссылку

11.04.2019, 14:00. Просмотров 214. Ответов 3

Здравствуйте! Мною была создана программа-справочник, которая через компонент WebView открывает локальный n0.html, но почему-то не работает переход по ссылке от n0.html к n1.html.

Код n0.html:

HTML5
1
2
3
4
<body>
  <p><a href="file:///android_res/raw/n1.html">Как сделать такое же фото?</a></p> 
  <p><img src="file:///android_res/raw/q01.jpg" alt="Письма мастера дзен"></p>
</body>
Картинка открывается, но при этом нельзя перейти по ссылке на n1.html. Я уже перепробовал все что знал и облазил весь интернет. Людей с этой проблемой много, но решения нигде нет.
Программа при нажатии на ссылку просто закрывается. Если указать в качестве пути просто n1.html, то появляется пустой экран. Пробовал через assets, но все ровно так же.

Возможно Вам пригодится код DetailActivity.java, поэтому оставлю его тут:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package com.example.myapplication4;
 
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.webkit.WebView;
 
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
 
public class DetailActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_detail);
 
        WebView webView = findViewById(R.id.webView);
 
        Intent intent = getIntent();
        //получаем строку и формируем имя ресурса
        String resName = "n" + intent.getIntExtra("title", 0);
        Log.i("name", resName);
        Context context = getBaseContext(); //получаем контекст
 
        //читаем текстовый файл из ресурсов по имени
        String text = readRawTextFile(context, getResources().getIdentifier(resName,
                "raw", "com.example.myapplication4"));
 
        webView.loadDataWithBaseURL(null, text, "text/html", "en_US", null);
    }
 
    //читаем текст из raw-ресурсов
    private String readRawTextFile(Context context, int resId)
    {
        InputStream inputStream = context.getResources().openRawResource(resId);
 
        InputStreamReader inputReader = new InputStreamReader(inputStream);
        BufferedReader buffReader = new BufferedReader(inputReader);
        String line;
        StringBuilder builder = new StringBuilder();
 
        try {
            while (( line = buffReader.readLine()) != null) {
                builder.append(line);
                builder.append("\n");
            }
        } catch (IOException e) {
            return null;
        }
        return builder.toString();
    }
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2019, 14:00
Ответы с готовыми решениями:

Переход от одного диалогового окна к следующему
Добрый день всем участникам форума! Задам еще один &quot;нубский&quot; вопрос: каким образом осуществить...

Передача значения переменной из одного файла в другой через ссылку
Всем привет! Задача вроде бы простая и ответ есть вот тут:...

Вызов методов JavaFX через html интерфейс (webview)
Всем доброе время суток! Подскажите в чём может быть проблема: есть дисктопное приложение с html...

WebBrowser открытие локального html файла
Помогите исправить код WebBrowser1-&gt;Navigate(ExtractFilePath(paramstr(0))+&quot;help/help.html&quot;);...

Передать JS действия через HTML ссылку
Всем привет. Есть сслыка &lt;a href=&quot;/blabla.html&quot;&gt;BlaBla&lt;/a&gt; На странице blabla.html есть...

3
ExFau$t
889 / 708 / 207
Регистрация: 08.05.2012
Сообщений: 3,406
11.04.2019, 14:24 2
А почему не сделать нативно всё?
0
Serge_biceps
0 / 0 / 0
Регистрация: 14.09.2015
Сообщений: 7
11.04.2019, 14:36  [ТС] 3
Это как?
0
ExFau$t
889 / 708 / 207
Регистрация: 08.05.2012
Сообщений: 3,406
11.04.2019, 14:52 4
Без webview, с нормальными окнами и переходами.
0
11.04.2019, 14:52
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2019, 14:52

Переход з HTML через формулу PHP
Какую формулу можно сделать что бы с html сайта при нажатии на кнопку оплата (в кнопке оплата...

Подключение нестандартного шрифта в html через прямую ссылку
Можно ли подключить нестандартный шрифт через @font-face используя не путь на компьютере а ссылку...

Как открыть сохраненную html ссылку браузера через эмулятор терминала?
Здравствуйте. В каталоге $HOME/'Рабочий стол'/'Ссылки браузера' сохранена ссылка браузера ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru