Привет, сначала я хотел сказать, что я новичок в программировании (в основном я занимаюсь графическим дизайном), и я хочу настроить приложение, где я показываю галерею изображений и пользователь может сохранить изображения на своем устройстве. Я использую WebView, так как это проще всего на моем, и сейчас я вижу изображение, хорошо отображаемое в приложении с помощью html. Я хотел бы, чтобы пользователь мог долгое время нажать, чтобы вызывать действия браузера по умолчанию «сохранить как» или «установить как обои».Android WebView: по умолчанию Save As Context Long Press
Вот что у меня есть, насколько код в моем файле 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 для отображения моих обоев и разрешить пользователю сохранять/устанавливать в качестве обоев.
Update 1: мне удалось иметь длинную работу с прессой и отдайте LogCat информации, которая является довольно интересной для меня - теперь все, что нужно сделать, это получить, что меню всплывающего окна, как браузер показывая «Сохранить изображение» «Просмотреть изображение» «Установить как обои» - снова любая помощь приветствуется, и, пожалуйста, не стесняйтесь, чтобы мой код исправил ее и научил меня, почему вы это сделали, если вы ее заработаете> _ <
Новый код:
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;
}
};
}
Куда бы я положил это, если код, приведенный выше, является моим единственным кодом - мне нужно было бы указать намерение в манифесте, и это позволит ему? – IMWJD
добавьте длинный клик для просмотра изображений, который запустит намерение. Вам не нужно было добавлять что-либо к манифесту, это только для новых действий, например, если вы звонили на образ, который запустил новый экран, который должен быть зарегистрирован в манифесте, но не его намерение, зарегистрированное, его активность . – r2DoesInc