赞
踩
页面布局
<?xml version="1.0" encoding="utf-8"?> <DirectionalLayout xmlns:ohos="http://schemas.huawei.com/res/ohos" ohos:height="match_parent" ohos:width="match_parent" ohos:orientation="vertical"> <Image ohos:height="200vp" ohos:width="200vp" ohos:scale_mode="zoom_center" ohos:layout_alignment="center" ohos:image_src="$media:enemy" ></Image> <Image ohos:top_margin="30vp" ohos:height="200vp" ohos:id="$+id:enemy" ohos:width="200vp" ohos:scale_mode="zoom_center" ohos:layout_alignment="center" ohos:image_src="$media:bu" ></Image> <DependentLayout ohos:height="match_content" ohos:width="match_content" ohos:margin="20vp" ohos:layout_alignment="center" > <Button ohos:id="$+id:bu" ohos:height="40vp" ohos:width="80vp" ohos:text="布" ohos:margin="10vp" ohos:text_size="27fp" ohos:background_element="$graphic:capsule_button_element" ></Button> <Button ohos:id="$+id:jiandao" ohos:right_of="$id:bu" ohos:height="40vp" ohos:width="80vp" ohos:background_element="$graphic:capsule_button_element" ohos:text="剪刀" ohos:text_size="27fp" ohos:margin="10vp" ></Button> <Button ohos:id="$+id:shitou" ohos:right_of="$id:jiandao" ohos:margin="10vp" ohos:height="40vp" ohos:width="80vp" ohos:text="石头" ohos:text_size="27fp" ohos:background_element="$graphic:capsule_button_element" ></Button> </DependentLayout> <DependentLayout ohos:height="match_content" ohos:width="match_content" ohos:left_margin="145vp"> <Text ohos:id="$+id:pp" ohos:height="match_content" ohos:width="match_content" ohos:text_size="27fp" ohos:text="得分:"></Text> <Text ohos:id="$+id:defen" ohos:right_of="$id:pp" ohos:height="match_content" ohos:width="match_parent" ohos:text_size="27fp" ohos:text="0"></Text> </DependentLayout> </DirectionalLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:shape="rectangle">
<corners
ohos:radius="100"/>
<solid
ohos:color="#007CFD"/>
</shape>
效果如下(图是随便找的,效果不怎么样,将就了)
通过MainAbility配置此应用唯一一个slice
import com.example.caiquan2.slice.MainAbilitySlice;
import ohos.aafwk.ability.Ability;
import ohos.aafwk.content.Intent;
public class MainAbility extends Ability {
@Override
public void onStart(Intent intent) {
super.onStart(intent);
super.setMainRoute(MainAbilitySlice.class.getName());
}
}
编写slice
import com.example.caiquan2.ResourceTable; import ohos.aafwk.ability.AbilitySlice; import ohos.aafwk.content.Intent; import ohos.agp.components.Button; import ohos.agp.components.Component; import ohos.agp.components.Image; import ohos.agp.components.Text; import java.util.Random; public class MainAbilitySlice extends AbilitySlice { static Button bu; static Button shitou; static Button jiandao; static Text defen; static Image enemy; static Integer core=0; Random random=new Random(); @Override public void onStart(Intent intent) { super.onStart(intent); //给slice 配置xml布局 super.setUIContent(ResourceTable.Layout_mainslice); initView(); } public void initView() { //通过id搞到相关应用 bu= (Button) findComponentById(ResourceTable.Id_bu); shitou= (Button) findComponentById(ResourceTable.Id_shitou); jiandao= (Button) findComponentById(ResourceTable.Id_jiandao); defen= (Text) findComponentById(ResourceTable.Id_defen); enemy= (Image) findComponentById(ResourceTable.Id_enemy); //给石头剪刀布三个按钮绑定单击事件 bu.setClickedListener(this::chuli); shitou.setClickedListener(this::chuli); jiandao.setClickedListener(this::chuli); } //根据component的不同做出不同处理 private void chuli(Component component) { int way; String name=component.getName(); if(name.equals("Id_shitou")) way=0; else if(name.equals("Id_jiandao")) way=1; else way=2; System.out.println(name+":"+way); int enemyway=random.nextInt(3); //0石头 1 剪刀 2 布 System.out.println(enemyway); if(enemyway==0) enemy.setPixelMap(ResourceTable.Media_shitou); else if(enemyway==1) enemy.setPixelMap(ResourceTable.Media_jiandao); else enemy.setPixelMap(ResourceTable.Media_bu); if(way==0) { if(enemyway==1) core++; else if(enemyway==2) core--; } else if(way==1) { if(enemyway==2) core++; else if(enemyway==0) core--; } else { if(enemyway==0) core++; else if(enemyway==1) core--; } defen.setText(core.toString()); } @Override public void onActive() { super.onActive(); } @Override public void onForeground(Intent intent) { super.onForeground(intent); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。