Google Glass에서 기본 유리 화면의 목록처럼 외모와 기능 (머리 움직임으로 스크롤) 목록을 구현할 수 있습니까?Google Glass에서 ListVIew 사용
내가 언급 한 목록은 유리에 다음과 같습니다
나는 여기에 대한 문서 그래서 어떤 도움을 주시면 감사하겠습니다을 찾을 수 없습니다.
Google Glass에서 기본 유리 화면의 목록처럼 외모와 기능 (머리 움직임으로 스크롤) 목록을 구현할 수 있습니까?Google Glass에서 ListVIew 사용
내가 언급 한 목록은 유리에 다음과 같습니다
나는 여기에 대한 문서 그래서 어떤 도움을 주시면 감사하겠습니다을 찾을 수 없습니다.
여기에 tp 머리 움직임에 반응하는 ListView과 ScrollView이 있습니다.
다음은 내 머리글 스크롤 가능 목록보기의 예입니다. 그것은 매우 간단하고 원시적인 예입니다. 이 중 하나에서, 당신이 원하는대로 자신 만의 맞춤 스크롤 가능한 목록보기를 개발할 수 있다고 생각합니다. 단지 몇 가지 항목과 헤드 각도를 검색하는 센서 관리자가있는 목록보기가 있습니다. 피치 각도와 선형 매핑 공식 (headview 간격을 목록보기의 항목 수로 표시된 간격으로 매핑 됨)을 기반으로 머리글 스크롤 가능 목록보기를 쉽게 만들 수 있습니다. 나는 그것이 도움이되기를 바랍니다.
레이아웃 :
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.headangles.MainActivity" >
<ListView
android:id="@+id/list"
android:layout_height="wrap_content"
android:layout_width="match_parent">
</ListView>
</RelativeLayout>
활동 :
public class MainActivity extends Activity implements SensorEventListener {
private SensorManager mSensorManager;
private Sensor mOrientation;
ListView listView ;
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
mOrientation = mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
mSensorManager.registerListener(this, mOrientation, SensorManager.SENSOR_DELAY_GAME);
// Get ListView object from xml
listView = (ListView) findViewById(R.id.list);
// Defined Array values to show in ListView
String[] values = new String[] { "Android List View",
"Adapter implementation",
"Simple List View In Android",
"Create List View Android",
"Android Example",
"List View Source Code",
"List View Array Adapter",
"Android Example List View"
};
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, values);
// Assign adapter to ListView
listView.setAdapter(adapter);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {}
@Override
public void onSensorChanged(SensorEvent event) {
/* *** need only pitch angle (head bouncing backwards and forward)*** */
float pitch_angle = event.values[1];
/* *** first interval head angle degrees *** */
int top_head_angle_limit = -110;
int bot_head_angle_limit = -70;
/* *** second interval *** */
int top_list_item_limit = 0;
int bot_list_item_limit = adapter.getCount();
/* *** linear mapping/ map interval [-110,-70](head angle degrees) -> [0, 8] list items *** */
/* *** linear mapping formula: (val - A)*(b-a)/(B-A) + a *** */
if(pitch_angle >= top_head_angle_limit && pitch_angle <= bot_head_angle_limit){
int selection = (int) ((pitch_angle - top_head_angle_limit)*(bot_list_item_limit - top_list_item_limit)/(bot_head_angle_limit - top_head_angle_limit) + top_list_item_limit);
Log.e("selection: ", String.valueOf(selection));
listView.setSelection(selection);
}
}
}
'항목을 클릭하십시오'에 대해서는 어떻게 할 수 있습니까? 나는 집중된 것을 의미합니까? 'listView.setOnItemClickListener()'를 시도했지만 작동하지 않습니다. – hrskrs
감사합니다이 날 :) 여기 – Aksiom
는 몇 가지 작업의 예 당신이 먹통 경우 https를 시작할 수 얻을 것이다 ://github.com/chrisberry – thechrisberry
안녕 pscholl. 제공 한 링크를 더 이상 사용할 수 없습니다. 시간과 의지가 있다면, 그들을 업데이트하십시오 :). 감사! –