2012-06-12 121 views
0

我正在使用Titanium Appcelerator創建iPhone應用程序。對於其中一個標籤,我想包含一個相機。當我點擊攝像機圖像我想要的應用:Iphone Camera,Titanium Appcelerator

  • 打開相機和拍照
  • 如果用戶想要拍攝另一張照片問
  • 然後打開相機又是肯定的
  • (循環)
  • 將圖像(本地保存)放入數組中
  • 返回按鈕!

我似乎無法在任何地方找到相機功能。

+0

http://developer.appcelerator.com/questions/tag/camera – Luke

回答

0
var win = Titanium.UI.createWindow({ 
    title:"Using the Camera and Video", 
    backgroundColor:"#FFFFFF" 
}); 

var button = Titanium.UI.createButton({ 
    title:"Use camera", 
    width:180, 
    height:48, 
    bottom: 12, 
    zIndex:2 
}); 

button.addEventListener("click", function(e){ 
    //Open the photo gallery 
    Titanium.Media.showCamera({ 
     //function to call upon successful load of the gallery 
     success:function(e){ 
      if(e.mediaType === Titanium.Media.MEDIA_TYPE_PHOTO){ 
       //e.media represents the photo or video 
       var imageView = Titanium.UI.createImageView({ 
        image:e.media, 
        width:320, 
        height:480, 
        top:12, 
        zIndex:1 
       }); 
       win.add(imageView); 
      }else if(e.mediaType === Titanium.Media.MEDIA_TYPE_VIDEO){ 

       var w = Titanium.UI.createWindow({ 
        title:"New Video", 
        backgroundColor:"#000000" 
       }); 

       var videoPlayer = Titanium.Media.createVideoPlayer({ 
        media:e.media, 
        backgroundColor:"#FFFFFF", 
        //movieControlMode:Titanium.Media.VIDEO_CONTROL_DEFAULT, 
        /*other values 
        * Titanium.Media.VIDEO_CONTROL_EMBEDDED 
        * Titanium.Media.VIDEO_CONTROL_FULLSCREEN 
        * Titanium.Media.VIDEO_CONTROL_HIDDEN 
        * Titanium.Media.VIDEO_CONTROL_NONE 
        */ 
        //movieControlStyle:Titanium.Media.VIDEO_CONTROL_FULLSCREEN, 
        //scalingMode:Titanium.Media.VIDEO_SCALING_ASPECT_FIT 
        /*other values 
        * Titanium.Media.VIDEO_SCALING_ASPECT_FILL 
        * Titanium.Media.VIDEO_SCALING_MODE_FILL 
        * Titanium.Media.VIDEO_SCALING_NONE 
        */ 
       }); 

       w.add(videoPlayer); 

       videoPlayer.addEventListener("complete", function(e){ 
        w.remove(videoPlayer); 
        videoPlayer = null; 
        w.close(); 
       }); 

       w.open({modal:true}); 
      } 

     }, 
     error:function(e){ 
      alert("There was an error"); 
     }, 
     cancel:function(e){ 
      alert("The event was cancelled"); 
     }, 
     //Allow editing of media before success 
     allowEditing:true, 
     saveToPhotoGallery:true, 
     //Media types to allow 
     mediaTypes:[Titanium.Media.MEDIA_TYPE_PHOTO,Titanium.Media.MEDIA_TYPE_VIDEO], 
     //The other is Titanium.Media.MEDIA_TYPE_VIDEO, 
     //If recording video, you can set the quality to record at 
     videoQuality:Titanium.Media.QUALITY_HIGH 
     /*other possible values for this property are 
     * Titanium.Media.QUALITY_MEDIUM 
     * Titanium.Media.QUALITY_LOW 
     */ 
    }); 
}); 

Titanium.App.addEventListener('camera_button', function(){ 
    Titanium.Media.takePicture(); 
}); 

win.add(button); 

win.open(); 
相關問題