有人知道关于页demo吗?

关于页demo

HarmonyOS
2024-05-26 14:29:02
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
LenZhong

告知用户关于应用的一些基本信息,例如:官网、开发者联盟、公众号等

核心代码:

import Constants from '../common/constants/Constants'; 
import { common } from '@kit.AbilityKit'; 
 
@Observed 
  //设置条目信息构造 
class SettingMenu { 
  public id: string; // 唯一id 
  public image: Resource; // 菜单图标 
  public text: string; // 菜单文本 
  public des: Resource; //后缀文本 
 
  constructor(id: string, image: Resource, text: string, des: Resource) { 
    this.id = id; 
    this.image = image; 
    this.text = text; 
    this.des = des; 
  } 
} 
 
@Entry 
@Component 
struct AboutPage { 
  //设置条目信息数组 
  @State menuGroup: SettingMenu[] = [ 
    new SettingMenu('setting', $r('app.media.mine_settings'), '官网', $r('app.string.void')), 
    new SettingMenu('vipownsetting', $r('app.media.mine_vipsettings'), 'XXXX', $r('app.string.void')), 
    new SettingMenu('mycollection', $r('app.media.ic_collect'), '公众号', $r('app.string.void')), 
    new SettingMenu('mylike', $r('app.media.mine_like'), '分享我们', $r('app.string.void')), 
    new SettingMenu('browsinghistory', $r('app.media.mine_time'), '第三方共享信息清单', $r('app.string.void')), 
  ]; 
 
  build() { 
    Stack() { 
      Navigation() { 
        Column() { 
          Image($r('app.media.startIcon')).width(60).height(60) 
 
          Text("App Name").fontWeight(700).fontSize('14fp').margin({ top: 10 }) 
          Text("Description").fontWeight(600).fontSize('12fp').margin({ top: 10 }) 
        } 
        .width('100%') 
        .height(300) 
        .justifyContent(FlexAlign.Center) 
        .alignItems(HorizontalAlign.Center) 
 
        Column() { 
          Row() { 
            List() { 
              ForEach(this.menuGroup, 
                (item: SettingMenu) => { 
                  ListItem() { 
                    SettingItemView({ image: item.image, text: item.text, des: item.des }) 
                  } 
                  .width('100%') 
                }, 
                (item: SettingMenu) => item.id.toString()) 
            } 
            .divider({ 
              strokeWidth: $r('app.float.stroke_width'), 
              color: $r('app.color.font_color_00000'), 
              startMargin: $r('app.integer.layout_size_46'), 
              endMargin: $r('app.integer.layout_size_24') 
            }) 
          } 
          .padding({ bottom: $r('app.integer.layout_size_5'), top: $r('app.integer.layout_size_5') }) 
          .width('90%') 
          .borderRadius($r('app.integer.layout_size_24')) 
          .alignItems(VerticalAlign.Center) 
          .margin({ bottom: $r('app.integer.layout_size_12') }) 
          .backgroundColor($r('app.color.font_color_FFFFFF')) 
        } 
        .width('100%').layoutWeight(1) 
 
        Column() { 
          Text() { 
            Span('XXX用户协议').fontColor(Color.Blue).fontSize(12) 
            Span('和').fontSize(12) 
            Span('XXX与隐私的声明').fontColor(Color.Blue).fontSize(12) 
          } 
 
          Text('版权所有◎ 2011-2019 华为技术有限公司保留一切权利').fontSize(12) 
          Text('技术支持:00000x').fontSize(12) 
        }.width('100%').height(60) 
      } 
      .height(Constants.FULL_PERCENT) 
      .title('关于页') 
      .titleMode(NavigationTitleMode.Mini) 
      .backgroundColor($r('app.color.listColor')) 
    } 
  } 
} 
 
@Component 
  //设置条目布局 
export struct SettingItemView { 
  private image: string | Resource = ''; // 图标 
  private text: string | Resource = ''; // 设置名称 
  private des: string | Resource = ''; //后面的文本 
 
  build() { 
    Row() { 
      Row() { 
        Image(this.image) 
          .width($r('app.integer.layout_size_22')) 
          .height($r('app.integer.layout_size_32')) 
          .objectFit(ImageFit.Contain) 
        Text(this.text) 
          .fontSize($r('app.integer.layout_size_16')) 
          .fontWeight(400) 
          .fontFamily('HarmonyHeiTi') 
          .fontColor($r('app.color.font_color_182431')) 
          .margin({ left: $r('app.integer.layout_size_12') }) 
          .layoutWeight(1) 
          .lineHeight($r('app.integer.layout_size_22')) 
 
        Text(this.des) 
          .opacity($r('app.float.opacity')) 
          .fontSize($r('app.integer.layout_size_14')) 
          .fontWeight(400) 
          .fontFamily('HarmonyHeiTi') 
          .fontColor($r('app.color.font_color_182431')) 
          .lineHeight($r('app.integer.layout_size_19')) 
      } 
      .width('100%') 
      .height($r('app.integer.tabbar_height')) 
      .padding({ 
        left: $r('app.integer.layout_size_22'), 
        right: $r('app.integer.layout_size_12') 
      }) 
      .alignItems(VerticalAlign.Center) 
    } 
    .width('100%') 
    .height($r('app.integer.layout_size_48')) 
    .alignSelf(ItemAlign.Center) 
  } 
}
分享
微博
QQ
微信
回复
2024-05-27 18:17:47
相关问题
有人知道发布demo
418浏览 • 1回复 待解决
webview组件demo ,有人知道
413浏览 • 1回复 待解决
如何跳转到app设置有人知道
264浏览 • 1回复 待解决
有人知道关于折叠机适配问题
530浏览 • 1回复 待解决
如何保存faultLogger ,有人知道
136浏览 • 1回复 待解决
有人知道JS menu如何隐藏
3079浏览 • 1回复 待解决
如何发送短信,有人知道?
547浏览 • 1回复 待解决
taskpool 使用问题,有人知道
387浏览 • 1回复 待解决
有人知道社区怎么预约直播
1243浏览 • 1回复 已解决
如何跳出ForEach,有人知道
581浏览 • 1回复 待解决
SnapShot定位,有人知道怎么处理
375浏览 • 1回复 待解决
导航栏如何适配,有人知道?
546浏览 • 0回复 待解决
如何使用快速修复,有人知道
211浏览 • 1回复 待解决
List组件性能问题,有人知道
584浏览 • 1回复 待解决
如何定义dialog动画,有人知道?
695浏览 • 1回复 待解决
有人知道如何实现图文混排
334浏览 • 1回复 待解决
如何引用HSP库,有人知道?
544浏览 • 1回复 待解决
如何实现翻页功能,有人知道
571浏览 • 1回复 待解决
ArkTS支持反射,有人知道反射用法?
697浏览 • 1回复 待解决
导包报错,有人知道原因
565浏览 • 1回复 待解决
clientid相关问题,有人知道
442浏览 • 1回复 待解决
如何开启AOT编译模式,有人知道
624浏览 • 1回复 待解决
是否有无网判断接口,有人知道
509浏览 • 1回复 待解决
如何实现http长连接,有人知道
448浏览 • 1回复 待解决