2012-12-04 113 views
0

在我的應用程序中,我有它,以便當用戶單擊相機按鈕時,它將他帶到相機使用意圖。從相機加載圖片到ImageView

然後,他拍攝照片,它應該將其加載回ImageView中,與Camera按鈕位於同一屏幕上。

我認爲我的屏幕方向有問題。當我加載相機視圖時,它切換到水平方向,當它關閉時,它會切換回垂直方向,我的整個屏幕將重置爲默認值。

這是我在logcat中得到的錯誤:

12-03 20:14:38.440: E/SpannableStringBuilder(15134): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length 

任何想法?

編輯:

這裏是發生了什麼:

  • 我點擊相機按鈕。
  • 屏幕攝像頭視圖切換到水平模式,但我垂直拿着它,因此它切換到垂直。
  • 我以水平模式拍照。
  • 相機應用程序要求我保存我的照片或以垂直模式取消。
  • 我點擊保存。
  • 我的應用程序在水平模式下加載並將圖片放置在imageView中。
  • 該應用程序然後切換回垂直模式並重置整個屏幕。

我把你的所有代碼都放進去了,但是沒有幫助。

回答

0
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 

我所做的只是添加一行代碼,它的工作完美。

1

另外要注意的一點是,攝像頭默認情況下,在僅橫向模式的Android作品。因此,無論您的屏幕方向是什麼,相機都將僅以水平模式啓動。另外,作爲上述不

android:configChanges="orientation" 

和處理這個在你的活動是使用下面的回調

@Override 
public void onConfigurationChanged(Configuration newConfig) {  
    super.onConfigurationChanged(newConfig); 

}

+0

我把代碼放入,但它仍然不起作用。閱讀我的編輯帖子,瞭解發生的情況。 – user1513687

+0

重置整個屏幕是什麼意思?拍攝的圖像是否消失,圖像視圖什麼也沒有顯示?我建議在init()方法中執行所有的onCreate操作,並在onConfigurationchanged中調用相同的init。 –

+0

拍完照片後。它在水平模式下加載到imageview中。經過一秒鐘後,它會回到垂直狀態,屏幕上的所有圖像都會恢復到原來的狀態。 – user1513687