Imは(インターネットでの例を発見した)段ボールビューCardboardViewとカスタムメニューのAndroid
private class CardboardOverlayEyeView extends ViewGroup {
private final ImageView imageView;
private final TextView textView;
private float offset;
public CardboardOverlayEyeView(Context context, AttributeSet attrs) {
super(context, attrs);
imageView = new ImageView(context, attrs);
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
imageView.setAdjustViewBounds(true); // Preserve aspect ratio.
addView(imageView);
textView = new TextView(context, attrs);
textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 14.0f);
textView.setTypeface(textView.getTypeface(), Typeface.BOLD);
textView.setGravity(Gravity.CENTER);
textView.setShadowLayer(3.0f, 0.0f, 0.0f, Color.DKGRAY);
addView(textView);
}
public void setColor(int color) {
imageView.setColorFilter(color);
textView.setTextColor(color);
}
public void setText(String text) {
textView.setText(text);
}
public void setTextViewAlpha(float alpha) {
textView.setAlpha(alpha);
}
public void setOffset(float offset) {
this.offset = offset;
}
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
//bla bla view positions.
}
}
}
を使用しようと、私は(Bluetooth経由)ゲームパッドのためにここにメニューを追加します。私はちょうど私のメニューと別のlayout.xml
を書くとCardboardOverlayEyeView
で私は現在のviewGroupにこのレイアウトを追加inflateを使用しています。しかし、正しい作業のために - extends ViewGroup
はextends RelativeLayout
に変更されました。
マイメニューが表示されます。左ボタンでフォーカスを表示しているとき(ボタンの別の色のように)、それがジョイスティック(UP/DOWN)のコントロールを使用しているときに、「ポイント1、ポイント2、ポイント3」のようなボタンはほとんどありません。また、私は左右のジョイスティックのコントロールを使用する場合 - 私は左から右のビューに切り替えることができます。 私はスイッチを削除したいと思うし、leftViewにボタンをフォーカスしている場合(別の色で)、私はrightViewのこのステップも必要です。誰も私を助けることができますか?どうやってするの。 画像
誰かが助けることができますか? – Peter