2012-01-29 2 views
1

Привет, сначала я хотел сказать, что я новичок в программировании (в основном я занимаюсь графическим дизайном), и я хочу настроить приложение, где я показываю галерею изображений и пользователь может сохранить изображения на своем устройстве. Я использую 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; 

    } 

}; 

} 

ответ

1

I BELIEVE это то, что вы ищете, android set image as contact icon/wallpaper, в частности, Intent setAs = new Intent(Intent.ACTION_ATTACH_DATA); setAs.setType("image/jpg");. Я не совсем уверен, что это то, что вы ищете, но если это не совсем правильно, это должно привести вас к правильному пути.

+0

Куда бы я положил это, если код, приведенный выше, является моим единственным кодом - мне нужно было бы указать намерение в манифесте, и это позволит ему? – IMWJD

+0

добавьте длинный клик для просмотра изображений, который запустит намерение. Вам не нужно было добавлять что-либо к манифесту, это только для новых действий, например, если вы звонили на образ, который запустил новый экран, который должен быть зарегистрирован в манифесте, но не его намерение, зарегистрированное, его активность . – r2DoesInc

 Смежные вопросы

  • Нет связанных вопросов^_^