2012-01-29 4 views
1

안녕하세요. 프로그래밍에 익숙하지 않습니다. (주로 그래픽 디자인을 다룹니다.) 이미지 갤러리를 보여주는 애플리케이션을 설정하고 싶습니다. 사용자는 장치에 이미지를 저장할 수 있습니다. 내 웹 사이트에서 WebView를 사용하고 있는데 지금은 쉽지만 html을 사용하는 응용 프로그램에서는 이미지가 잘 표시됩니다. 사용자가 길게 눌러 기본 브라우저를 "다른 이름으로 저장"또는 "배경 화면으로 설정"작업을 호출 할 수있게하고 싶습니다. 여기Android WebView : 기본 컨텍스트로 저장 긴 누르기

내가 내 자바 파일의 코드로까지 무엇을 가지고 : 물론

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 : 나는 긴 보도 일이 다시 나에게 매우 흥미로운 정보를 로그 캣 줘 관리해야 - 지금은 할 필요가 브라우저처럼 팝업하는 해당 메뉴를 얻을 수있다 않습니다 "이미지 저장" "이미지보기" "바탕 화면으로 설정"- 다시 도움을 주시면 고맙게 생각하고 제 코드를 수정하고 왜 작동했는지 왜 가르쳐 주셨습니까> _ <

새 코드 :

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

나는 이것이 android set image as contact icon/wallpaper, 특히 Intent setAs = new Intent(Intent.ACTION_ATTACH_DATA); setAs.setType("image/jpg"); 부분을 찾고있는 것을 믿습니다. 나는 이것이 당신의 찾고있는 것이 전부는 아니지만, 그것이 정확하지 않다면, 당신을 올바른 길로 인도해야합니다.

+0

위의 코드가 내 유일한 코드 인 경우 어디에 넣을까요 - 매니페스트에 의도를 넣어야 만 가능합니까? – IMWJD

+0

이미지보기에 의도를 시작하는 긴 클릭 수신기를 추가하십시오. 매니페스트에 아무 것도 추가 할 필요가 없습니다. 새 액티비티에만 사용됩니다. 새 화면을 시작한 이미지에서 삐걱 거리는 소리, 매니페스트에 등록해야하지만 등록 된 의도는 아닙니다. 활동 . – r2DoesInc