所以基本上我已经为我正在创建的纸牌游戏定义了一个片段,我希望将这个片段重复用于播放器1和播放器2(因为它们都具有相同的布局)但是我希望它们成为每个片段的镜像其他。如何实现这一点,我研究了一个片段,但到目前为止还没有答案描述如何在代码中这样做,它们只描述了屏幕旋转时的处理。
1v1游戏的活动
package com.PigRam.magichelper;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public class OneVsOneDuelActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.one_vs_one_view);
}
}
片段的布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:baselineAligned="true">
<fragment android:name="com.PigRam.magichelper.PlayerOneDuelFragment"
android:id="@+id/player_one_fragment"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp"/>
<fragment android:name="com.PigRam.magichelper.PlayerTwoDuelFragment"
android:id="@+id/player_two_fragment"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="0dp" />
</LinearLayout>
目前,片段布局在他们的布局中只有一个按钮,我想要显示玩家转身已经结束。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<Button android:text="@string/end_turn"
android:id="@+id/end_turn_botton"
android:layout_height="wrap_content"
android:layout_width="fill_parent"/>
</LinearLayout>
玩家1的代码(玩家2完全相同)
package com.PigRam.magichelper;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public class OneVsOneDuelActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.one_vs_one_view);
}
}
答案 0 :(得分:1)
我猜测,如果您使用的是Android v3.0 +,则可以重复使用相同的片段并让第二个实例使用http://developer.android.com/reference/android/view/View.html#setRotation(float)将其视图旋转180度(将枢轴点设置为0.5后) ,0.5)
答案 1 :(得分:1)
在相对布局中添加该片段并将旋转设置为180
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="150dp"
android:rotation="180">
<fragment
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>