Android WebView: сохранение по умолчанию при длительном нажатии - PullRequest
1 голос
/ 29 января 2012

Привет, во-первых, я хотел сказать, что я новичок в программировании (я в основном занимаюсь графическим дизайном), и я хочу создать приложение, в котором я показываю галерею изображений, и пользователь может сохранять изображения на свое устройство. Я использую WebView, так как он самый простой для меня, и на данный момент у меня есть изображение, отображаемое в приложении с использованием HTML. Я бы хотел, чтобы пользователь мог долго нажимать, чтобы вызвать действия браузера по умолчанию «сохранить как» или «установить как обои».

Вот то, что у меня есть, насколько код в моем Java-файле:

package com.wallpapergallery.wjd;

import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.app.Activity;

public class WallpaperGallerybyWJDDesignsActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    WebView webview = (WebView)findViewById(R.id.webview);     
    webview.setWebChromeClient(new WebChromeClient());
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("file:///android_asset/www/index.html");

    }
}

Конечно, затем открывается страница индекса, которую я помещаю на страницу обычного png для тестирования. Перед тем, как ответить, я предупреждаю вас, что я новичок в этом, поэтому поясняю, как помочь с примером кода, чтобы я мог его изучить.

Как только это будет сделано, моя идея - использовать галерею HTML5, чтобы показать мои обои и позволить пользователю сохранять / устанавливать в качестве обоев.


Обновление 1: Мне удалось долго работать с прессой и вернуть мне информацию logcat, что для меня довольно увлекательно - теперь все, что мне нужно сделать, - это открыть это меню, как в браузере. с отображением «Сохранить изображение», «Просмотр изображения», «Установить в качестве обоев» - опять же, любая помощь приветствуется, и, пожалуйста, не стесняйтесь взять мой код, исправить его и научить меня, почему вы это сделали, если вы заставили его работать> _ <</p>

Новый код:

package com.wallpapergallery.wjd;

import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnLongClickListener;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.app.Activity;

public class WallpaperGallerybyWJDDesignsActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    WebView webview = (WebView)findViewById(R.id.webview);

    webview.setOnLongClickListener(listener);

    webview.setWebChromeClient(new WebChromeClient());
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl("file:///android_asset/www/index.html");                        
}
private OnLongClickListener listener = new OnLongClickListener() {

    public boolean onLongClick(View v) {

       Log.i("test","worked");

       return true;

    }

 };

}

1 Ответ

1 голос
/ 30 января 2012

Я верю, что это то, что вы ищете, Android установить изображение в качестве значка контакта / обои , в частности, часть Intent setAs = new Intent(Intent.ACTION_ATTACH_DATA); setAs.setType("image/jpg");. Я не совсем уверен, что это то, что вы ищете, но если это не совсем правильно, это должно привести вас на правильный путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...