正文

使用Camera類(5)

Android多媒體開發(fā)高級編程 作者:(美)艾佛瑞


產(chǎn)生這種旋轉(zhuǎn)的原因是Camera對象假定方向是水平或橫向模式。修正旋轉(zhuǎn)的最簡單方法是使活動(dòng)以橫向模式顯示。為此,可以在活動(dòng)的onCreate方法中添加以下代碼。

@Override 

public void onCreate(Bundle savedInstanceState) 

{

     super.onCreate(savedInstanceState);

     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

現(xiàn)在攝像頭預(yù)覽將會正確地顯示,如圖2-2所示。但是,我們的應(yīng)用程序現(xiàn)在被限定在橫向模式。

前面提及,Camera類有一個(gè)嵌套的Camera.Parameters類。這個(gè)類有一系列重要的屬性或設(shè)置,可以用來改變Camera對象運(yùn)作的方式。其中一個(gè)現(xiàn)在能夠幫助我們的參數(shù)可用來處理在預(yù)覽時(shí)遇到的旋轉(zhuǎn)/橫向問題。

可以對Camera對象使用的Parameters做如下修改:

Camera.Parameters parameters = camera.getParameters();

parameters.set("some parameter", "some value");

// 或者

parameters.set("some parameter", some_int);

camera.setParameters(parameters);

此處有兩個(gè)不同的通用Parameters.set方法。第一個(gè)方法的參數(shù)名稱和值都采用字符串,而第二個(gè)方法的參數(shù)名稱為字符串,但是值為整數(shù)。

應(yīng)該在創(chuàng)建Camera對象和指定它的預(yù)覽Surface之后立即在surfaceCreated方法中設(shè)置Parameters。


上一章目錄下一章

Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號