Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Анд_Рей
3 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 163
#1

Webview содержимое показывается только после проведения пальцем по элементу - Программирование Android

06.12.2015, 21:56. Просмотров 234. Ответов 1
Метки нет (Все метки)

Здравствуйте. Приложение содержит бегущюю HTML строкой (тэг<marquee>).
Есть функция, которая получает эту самую строку, создает WebView и добовляет его в LinearLayout.
Все хорошо работает,кроме того момента, что что-бы увидеть эту строку пользователю нужно провести пальцем снизу вверх по элементу ее содержащему ее.
Как избавиться от этой необходимости(проводить пальцем по элементу)

Вот функция
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
public void setMarqueeString(String marqueeString) {
        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.WRAP_CONTENT,
                LinearLayout.LayoutParams.MATCH_PARENT);
 
        final LinearLayout news_holder = (LinearLayout) findViewById(R.id.news_holder);
        WebView webView = new WebView(getApplicationContext());
 
        news_holder.removeAllViews();
        news_holder.addView(webView);
 
        webView.setLayoutParams(layoutParams);
        webView.setBackgroundColor(getResources().getColor(R.color.black));
        webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
 
        String html;
        if (marqueeString != null && marqueeString != "") {
            html = "<html><body>" +
                    "<font color='white'><marquee scrollamount='2' direction='right' loop='true'>" + marqueeString + "</marquee></font>" +
                    "</body></html>";
        } else {
            html = "<html><body>" +
                    "<FONT color='white' width='100%' height='100%'><center>" + getString(R.string.news_default_text) + "</center></FONT>" +
                    "</body></html>";
        }
        webView.loadDataWithBaseURL(null, html, "text/html", "utf-8", null);
 
        webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                view.setActivated(true);
                view.pageDown(true);
                view.setVerticalScrollbarOverlay(false);
                view.setHorizontalScrollbarOverlay(false);
                news_holder.setFocusable(true);
                Toast.makeText(Main.this, "page loaded", Toast.LENGTH_SHORT).show();
            }
        });
    }
Спасибо

Добавлено через 1 час 59 минут
так-же пробывал заменить
Java
1
webView.loadDataWithBaseURL(null, html, "text/html", "utf-8", null);
на
Java
1
webView.loadData(html, "text/html", "utf-8");
текст показывается автоматически, но начинается где-то с середины...
Пожалуйста, помогите разобраться с этим косячком..
Всем больше спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2015, 21:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Webview содержимое показывается только после проведения пальцем по элементу (Программирование Android):

Touch, действие после проведения по областии - Программирование Android
Хочу сделать, чтобы после того как проведешь по определенной области экрана совершалось определенное действие, подскажите как это можно...

Всплывающая подсказка не показывается после клика по элементу, на который она установлена - Visual Basic .NET
Поставил всплывающую подсказку на кнопку: ToolTip на ToolTip1 = &quot;я подсказка&quot;. Подсказка всплывает, но если сделать клик по кнопке, то...

Форма показывается только после установки подключения - Visual Basic .NET
Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Connection.Open() '...

Как вывести содержимое WebView в qml? - C++ Qt
Собственно в заголовке весь вопрос. Есть WebView, в нем загружен сайт, нужно получить html-текст этого сайта.

Показывается только четверть монитора - Linux
Добрый день. Накатил Debian 6. При старте иксов показывается только вторая четверть монитора + при проведении мышью через низ...

В DbGrid показывается только одна запись - Delphi
Добрый день, В элементе DbGrid почему то Высвечивается только одна запись , никогда раньше не сталкивался с такой проблемой, подскажите...

1
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
07.12.2015, 04:38 #2
1) вместо marquee сделайте javascript функцию.
2) сделайте html-файл, покажите его в webview, добейтесь, что бы работал.
3) передайте строку из java кода в javascript функцию.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2015, 04:38
Привет! Вот еще темы с ответами:

Почему шапка на основе скрипта показывается только на главной странице - HTML, CSS
Здравствуйте всем! Мне нужна помошь я не могу понять почему шапка на основе скрипта показывается только на главной странице, а при...

В адресной строке explorer'а вместо пути теперь показывается только название папки. - Windows XP
Поиск не юзал. Простите грешного.

BSOD после недолгого времени проведения в игре - BSOD
Добрый день! Сразу предупреждаю, что не силён в программировании, и мало что понимаю, так что не судите строго, надеюсь на вашу помощь. ...

Старт бизнес-процесса после проведения документа - 1С
Существует документ Заказ монтажа, создан бизнес-процесс. Бизнес процесс стартует после проведения документа. Необходимо чтобы стартовал...


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

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

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