提交
This commit is contained in:
42
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.h
Normal file
42
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.h
Normal file
@@ -0,0 +1,42 @@
|
||||
//
|
||||
// QXMyCpRoomListCell.h
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/7/1.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "QXRoomListModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXMyCpRoomListCell : UICollectionViewCell
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *bgImageView;
|
||||
/// 头像
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *headerImageView;
|
||||
/// 房间类型
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *typeImageView;
|
||||
/// 昵称
|
||||
@property (weak, nonatomic) IBOutlet UILabel *nickNameLabel;
|
||||
/// ID
|
||||
@property (weak, nonatomic) IBOutlet UILabel *IDLabel;
|
||||
/// 关注数量
|
||||
@property (weak, nonatomic) IBOutlet UILabel *timeLabel;
|
||||
/// 收益金额
|
||||
@property (weak, nonatomic) IBOutlet UILabel *moneyLabel;
|
||||
@property (weak, nonatomic) IBOutlet UIButton *roomDetailBtn;
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIButton *roomRankBtn;
|
||||
@property (weak, nonatomic) IBOutlet UIButton *rankValueBtn;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *leftHeaderImageView;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *rightHeaderImageView;
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UILabel *relationLabel;
|
||||
|
||||
|
||||
@property (nonatomic,strong)QXRoomListCpModel *cpModel;
|
||||
|
||||
/// 0 我创建的 1 我主持的
|
||||
@property (nonatomic,assign)NSInteger type;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
43
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.m
Normal file
43
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.m
Normal file
@@ -0,0 +1,43 @@
|
||||
//
|
||||
// QXMyCpRoomListCell.m
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/7/1.
|
||||
//
|
||||
|
||||
#import "QXMyCpRoomListCell.h"
|
||||
#import "QXRoomDetailViewController.h"
|
||||
|
||||
@implementation QXMyCpRoomListCell
|
||||
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
self.roomDetailBtn.backgroundColor = QXConfig.themeColor;
|
||||
[self.roomDetailBtn setTitleColor:QXConfig.btnTextColor forState:(UIControlStateNormal)];
|
||||
}
|
||||
-(void)setType:(NSInteger)type{
|
||||
_type = type;
|
||||
}
|
||||
-(void)setCpModel:(QXRoomListCpModel *)cpModel{
|
||||
_cpModel = cpModel;
|
||||
self.nickNameLabel.text = cpModel.room_name;
|
||||
self.IDLabel.text = [NSString stringWithFormat:@"ID:%@",cpModel.room_number];
|
||||
[self.leftHeaderImageView sd_setImageWithURL:[NSURL URLWithString:cpModel.user1_avatar]];
|
||||
[self.rightHeaderImageView sd_setImageWithURL:[NSURL URLWithString:cpModel.user2_avatar]];
|
||||
NSString *money = [NSString qx_showHotCountNum:cpModel.earnings.longLongValue];
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"%@",money];
|
||||
self.relationLabel.text = cpModel.relation;
|
||||
|
||||
NSTimeInterval timeInterval = [[NSDate date] timeIntervalSince1970];
|
||||
long long milliseconds = (long long)(timeInterval);
|
||||
long long time = cpModel.end_time.longLongValue - milliseconds;
|
||||
self.timeLabel.text = [NSString getTimeWithSecond:time];
|
||||
}
|
||||
- (IBAction)detailAction:(id)sender {
|
||||
QXRoomDetailViewController *vc = [[QXRoomDetailViewController alloc] init];
|
||||
vc.type = self.type;
|
||||
vc.room_id = self.cpModel.room_id;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
}
|
||||
@end
|
||||
257
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.xib
Normal file
257
QXLive/Mine(音域)/View/我的房间/QXMyCpRoomListCell.xib
Normal file
@@ -0,0 +1,257 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" id="Fcp-h6-XEB" customClass="QXMyCpRoomListCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="560" height="159"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
||||
<rect key="frame" x="0.0" y="0.0" width="560" height="159"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xgc-ZW-Nkl">
|
||||
<rect key="frame" x="12" y="0.0" width="536" height="159"/>
|
||||
<subviews>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="uIN-QL-vql">
|
||||
<rect key="frame" x="0.0" y="0.0" width="536" height="159"/>
|
||||
<color key="backgroundColor" red="0.95686274510000002" green="1" blue="0.96470588239999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="10"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_header_placehoulder" translatesAutoresizingMaskIntoConstraints="NO" id="vn3-DL-4Lf">
|
||||
<rect key="frame" x="16" y="31" width="30" height="30"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="30" id="21H-g4-43L"/>
|
||||
<constraint firstAttribute="height" constant="30" id="ShY-Pz-SYd"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="15"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_header_placehoulder" translatesAutoresizingMaskIntoConstraints="NO" id="66B-mF-aS2">
|
||||
<rect key="frame" x="47" y="31" width="30" height="30"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="30" id="WES-A1-9yH"/>
|
||||
<constraint firstAttribute="height" constant="30" id="zPg-pT-808"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="15"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="my_cproom_head_bg" translatesAutoresizingMaskIntoConstraints="NO" id="dUG-ji-nPc">
|
||||
<rect key="frame" x="14" y="21" width="65" height="65"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="65" id="gAh-FV-YRh"/>
|
||||
<constraint firstAttribute="height" constant="65" id="gcV-gk-RVv"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="6"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="my_room_cp" translatesAutoresizingMaskIntoConstraints="NO" id="vk0-vy-p5Y">
|
||||
<rect key="frame" x="87" y="21" width="38" height="17"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="17" id="6SK-e5-iey"/>
|
||||
<constraint firstAttribute="width" constant="38" id="MpK-97-q4z"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="6"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="用户昵称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UHJ-6Y-z18">
|
||||
<rect key="frame" x="133" y="20.666666666666668" width="59.666666666666657" height="18.000000000000004"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="15"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ID:123456789" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jTr-3w-TZs">
|
||||
<rect key="frame" x="87" y="44" width="86.666666666666686" height="15.666666666666664"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123W" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ja1-Ki-jt0">
|
||||
<rect key="frame" x="480.33333333333331" y="20" width="43.666666666666686" height="19.333333333333329"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="16"/>
|
||||
<color key="textColor" red="1" green="0.54117647059999996" blue="0.80000000000000004" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="今日收益" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="rX1-aN-rOV">
|
||||
<rect key="frame" x="472.33333333333331" y="45.666666666666664" width="51.666666666666686" height="16"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" white="0.5" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="25g-ef-U5f">
|
||||
<rect key="frame" x="12" y="99" width="512" height="0.6666666666666714"/>
|
||||
<color key="backgroundColor" red="0.8862745098" green="0.8862745098" blue="0.8862745098" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="0.5" id="GHR-jX-lZX"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="D0C-vN-9bM">
|
||||
<rect key="frame" x="12" y="109.66666666666667" width="82" height="30.000000000000014"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="82" id="1ma-Zs-rwu"/>
|
||||
<constraint firstAttribute="height" constant="30" id="LeF-xp-5gw"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
|
||||
<state key="normal" title="房间明细"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="15"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
<connections>
|
||||
<action selector="detailAction:" destination="Fcp-h6-XEB" eventType="touchUpInside" id="lrW-Uc-C5k"/>
|
||||
</connections>
|
||||
</button>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="剩余33小时" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gpV-0C-EdQ">
|
||||
<rect key="frame" x="451.66666666666669" y="116" width="76.333333333333314" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="到期时间:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="drY-i4-4zq">
|
||||
<rect key="frame" x="381" y="116" width="62.666666666666686" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="aUe-ZW-OZm">
|
||||
<rect key="frame" x="87" y="68" width="37" height="18"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="18" id="GZe-MB-Zgr"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="15"/>
|
||||
<inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
|
||||
<state key="normal" title=" 45" image="my_cproom_value">
|
||||
<color key="titleColor" red="0.050980392159999999" green="1" blue="0.72549019609999998" alpha="1" colorSpace="calibratedRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="BH8-hx-cKt">
|
||||
<rect key="frame" x="142" y="68" width="37" height="18"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="18" id="nwC-I1-BPs"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="15"/>
|
||||
<inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
|
||||
<state key="normal" title=" 45" image="my_cproom_rank">
|
||||
<color key="titleColor" red="0.050980392159999999" green="1" blue="0.72549019609999998" alpha="1" colorSpace="calibratedRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="兄弟闺蜜" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="un0-sV-Wtm">
|
||||
<rect key="frame" x="14" y="67" width="65" height="15"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="15" id="Ouk-GX-bra"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="11"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="uIN-QL-vql" firstAttribute="top" secondItem="xgc-ZW-Nkl" secondAttribute="top" id="1Zu-vq-MsP"/>
|
||||
<constraint firstItem="UHJ-6Y-z18" firstAttribute="centerY" secondItem="vk0-vy-p5Y" secondAttribute="centerY" id="4qU-nr-5hs"/>
|
||||
<constraint firstItem="un0-sV-Wtm" firstAttribute="leading" secondItem="dUG-ji-nPc" secondAttribute="leading" id="6M8-Ny-Q4H"/>
|
||||
<constraint firstItem="jTr-3w-TZs" firstAttribute="top" secondItem="vk0-vy-p5Y" secondAttribute="bottom" constant="6" id="7lJ-Bb-BXk"/>
|
||||
<constraint firstItem="D0C-vN-9bM" firstAttribute="leading" secondItem="xgc-ZW-Nkl" secondAttribute="leading" constant="12" id="8u4-3M-H50"/>
|
||||
<constraint firstItem="drY-i4-4zq" firstAttribute="centerY" secondItem="gpV-0C-EdQ" secondAttribute="centerY" id="BWI-wi-28b"/>
|
||||
<constraint firstItem="vk0-vy-p5Y" firstAttribute="leading" secondItem="dUG-ji-nPc" secondAttribute="trailing" constant="8" id="DXM-ht-NUL"/>
|
||||
<constraint firstItem="D0C-vN-9bM" firstAttribute="top" secondItem="25g-ef-U5f" secondAttribute="bottom" constant="10" id="EgG-Gc-Gb5"/>
|
||||
<constraint firstItem="dUG-ji-nPc" firstAttribute="top" secondItem="xgc-ZW-Nkl" secondAttribute="top" constant="21" id="FwI-30-Utf"/>
|
||||
<constraint firstItem="66B-mF-aS2" firstAttribute="trailing" secondItem="dUG-ji-nPc" secondAttribute="trailing" constant="-2" id="JbX-Aw-2X7"/>
|
||||
<constraint firstItem="jTr-3w-TZs" firstAttribute="leading" secondItem="vk0-vy-p5Y" secondAttribute="leading" id="KqJ-FN-K3y"/>
|
||||
<constraint firstItem="vn3-DL-4Lf" firstAttribute="leading" secondItem="dUG-ji-nPc" secondAttribute="leading" constant="2" id="Mxz-74-Bqd"/>
|
||||
<constraint firstAttribute="bottom" secondItem="uIN-QL-vql" secondAttribute="bottom" id="NKo-es-zHl"/>
|
||||
<constraint firstItem="aUe-ZW-OZm" firstAttribute="bottom" secondItem="dUG-ji-nPc" secondAttribute="bottom" id="NSk-6I-Pit"/>
|
||||
<constraint firstItem="BH8-hx-cKt" firstAttribute="centerY" secondItem="aUe-ZW-OZm" secondAttribute="centerY" id="Ntx-dh-4lK"/>
|
||||
<constraint firstItem="UHJ-6Y-z18" firstAttribute="leading" secondItem="vk0-vy-p5Y" secondAttribute="trailing" constant="8" symbolic="YES" id="PJe-XP-CsH"/>
|
||||
<constraint firstItem="BH8-hx-cKt" firstAttribute="leading" secondItem="aUe-ZW-OZm" secondAttribute="trailing" constant="18" id="SZA-gs-3Sn"/>
|
||||
<constraint firstItem="25g-ef-U5f" firstAttribute="top" secondItem="dUG-ji-nPc" secondAttribute="bottom" constant="13" id="TzI-h6-fnl"/>
|
||||
<constraint firstItem="dUG-ji-nPc" firstAttribute="leading" secondItem="xgc-ZW-Nkl" secondAttribute="leading" constant="14" id="Vbm-f0-cDa"/>
|
||||
<constraint firstItem="un0-sV-Wtm" firstAttribute="trailing" secondItem="dUG-ji-nPc" secondAttribute="trailing" id="Xhn-dF-yCq"/>
|
||||
<constraint firstAttribute="trailing" secondItem="rX1-aN-rOV" secondAttribute="trailing" constant="12" id="YgD-PR-qMa"/>
|
||||
<constraint firstItem="vk0-vy-p5Y" firstAttribute="top" secondItem="dUG-ji-nPc" secondAttribute="top" id="Yxw-Ub-8at"/>
|
||||
<constraint firstItem="66B-mF-aS2" firstAttribute="top" secondItem="vn3-DL-4Lf" secondAttribute="top" id="Zz7-L1-EDM"/>
|
||||
<constraint firstAttribute="trailing" secondItem="25g-ef-U5f" secondAttribute="trailing" constant="12" id="b0r-go-fNq"/>
|
||||
<constraint firstAttribute="trailing" secondItem="gpV-0C-EdQ" secondAttribute="trailing" constant="8" id="cCH-1o-Nl4"/>
|
||||
<constraint firstItem="25g-ef-U5f" firstAttribute="leading" secondItem="xgc-ZW-Nkl" secondAttribute="leading" constant="12" id="e3h-5r-Pty"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Ja1-Ki-jt0" secondAttribute="trailing" constant="12" id="fBD-Qy-eNc"/>
|
||||
<constraint firstItem="uIN-QL-vql" firstAttribute="leading" secondItem="xgc-ZW-Nkl" secondAttribute="leading" id="h4G-we-Le9"/>
|
||||
<constraint firstItem="gpV-0C-EdQ" firstAttribute="leading" secondItem="drY-i4-4zq" secondAttribute="trailing" constant="8" symbolic="YES" id="k7w-sa-IYR"/>
|
||||
<constraint firstItem="vn3-DL-4Lf" firstAttribute="top" secondItem="dUG-ji-nPc" secondAttribute="top" constant="10" id="lBQ-3e-wvt"/>
|
||||
<constraint firstItem="un0-sV-Wtm" firstAttribute="bottom" secondItem="dUG-ji-nPc" secondAttribute="bottom" constant="-4" id="lJ1-2X-QUj"/>
|
||||
<constraint firstItem="gpV-0C-EdQ" firstAttribute="centerY" secondItem="D0C-vN-9bM" secondAttribute="centerY" id="mcM-Ka-Gsf"/>
|
||||
<constraint firstItem="Ja1-Ki-jt0" firstAttribute="centerY" secondItem="vk0-vy-p5Y" secondAttribute="centerY" id="ndE-vn-lcG"/>
|
||||
<constraint firstItem="aUe-ZW-OZm" firstAttribute="leading" secondItem="jTr-3w-TZs" secondAttribute="leading" id="nip-o0-3wC"/>
|
||||
<constraint firstAttribute="trailing" secondItem="uIN-QL-vql" secondAttribute="trailing" id="shS-bV-qVs"/>
|
||||
<constraint firstItem="rX1-aN-rOV" firstAttribute="centerY" secondItem="dUG-ji-nPc" secondAttribute="centerY" id="vbO-dk-9Cf"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="10"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
</subviews>
|
||||
</view>
|
||||
<constraints>
|
||||
<constraint firstItem="xgc-ZW-Nkl" firstAttribute="leading" secondItem="Fcp-h6-XEB" secondAttribute="leading" constant="12" id="20Y-bo-Mad"/>
|
||||
<constraint firstAttribute="bottom" secondItem="xgc-ZW-Nkl" secondAttribute="bottom" id="Fss-nC-eNy"/>
|
||||
<constraint firstAttribute="trailing" secondItem="xgc-ZW-Nkl" secondAttribute="trailing" constant="12" id="Z2t-Z7-ARM"/>
|
||||
<constraint firstItem="xgc-ZW-Nkl" firstAttribute="top" secondItem="Fcp-h6-XEB" secondAttribute="top" id="sEP-95-LNU"/>
|
||||
</constraints>
|
||||
<size key="customSize" width="560" height="94"/>
|
||||
<connections>
|
||||
<outlet property="IDLabel" destination="jTr-3w-TZs" id="6hd-Uq-iMy"/>
|
||||
<outlet property="bgImageView" destination="uIN-QL-vql" id="K3Z-cu-BY3"/>
|
||||
<outlet property="headerImageView" destination="dUG-ji-nPc" id="gMV-Az-gWJ"/>
|
||||
<outlet property="leftHeaderImageView" destination="vn3-DL-4Lf" id="2wH-ce-Oha"/>
|
||||
<outlet property="moneyLabel" destination="Ja1-Ki-jt0" id="uI1-VT-c3N"/>
|
||||
<outlet property="nickNameLabel" destination="UHJ-6Y-z18" id="TVZ-KB-F1c"/>
|
||||
<outlet property="rankValueBtn" destination="BH8-hx-cKt" id="Rc2-7d-TjK"/>
|
||||
<outlet property="relationLabel" destination="un0-sV-Wtm" id="uyc-PM-bBs"/>
|
||||
<outlet property="rightHeaderImageView" destination="66B-mF-aS2" id="n0B-7q-iVL"/>
|
||||
<outlet property="roomDetailBtn" destination="D0C-vN-9bM" id="TLY-yI-djH"/>
|
||||
<outlet property="roomRankBtn" destination="aUe-ZW-OZm" id="VcG-Et-dsk"/>
|
||||
<outlet property="timeLabel" destination="gpV-0C-EdQ" id="VNv-wg-PoH"/>
|
||||
<outlet property="typeImageView" destination="vk0-vy-p5Y" id="uOH-pR-xtx"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="528.24427480916029" y="35.563380281690144"/>
|
||||
</collectionViewCell>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="my_cproom_head_bg" width="65" height="65"/>
|
||||
<image name="my_cproom_rank" width="14" height="14"/>
|
||||
<image name="my_cproom_value" width="14" height="14"/>
|
||||
<image name="my_room_cp" width="46" height="20"/>
|
||||
<image name="user_header_placehoulder" width="40" height="40"/>
|
||||
</resources>
|
||||
</document>
|
||||
45
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.h
Normal file
45
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.h
Normal file
@@ -0,0 +1,45 @@
|
||||
//
|
||||
// QXMyRoomListCell.h
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/12.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "QXRoomListModel.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXMyRoomListCell : UICollectionViewCell
|
||||
/// 背景图
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *bgImageView;
|
||||
/// 头像
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *headerImageView;
|
||||
/// 房间类型
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *typeImageView;
|
||||
/// 昵称
|
||||
@property (weak, nonatomic) IBOutlet UILabel *nickNameLabel;
|
||||
/// ID
|
||||
@property (weak, nonatomic) IBOutlet UILabel *IDLabel;
|
||||
/// 关注数量
|
||||
@property (weak, nonatomic) IBOutlet UILabel *followLabel;
|
||||
/// 在线人数
|
||||
@property (weak, nonatomic) IBOutlet UILabel *onlineLabel;
|
||||
/// 访问量
|
||||
@property (weak, nonatomic) IBOutlet UILabel *comeCountLabel;
|
||||
/// 今日收益
|
||||
@property (weak, nonatomic) IBOutlet UILabel *todayLabel;
|
||||
/// 收益金额
|
||||
@property (weak, nonatomic) IBOutlet UILabel *moneyLabel;
|
||||
@property (weak, nonatomic) IBOutlet UIButton *roomDetailBtn;
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIButton *roomSubsidyBtn;
|
||||
@property (nonatomic,assign)NSInteger bgImageCount;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *roomWaitImageView;
|
||||
|
||||
@property (nonatomic,strong)QXRoomListModel *model;
|
||||
/// 0 我创建的 1 我主持的
|
||||
@property (nonatomic,assign)NSInteger type;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
117
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.m
Normal file
117
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.m
Normal file
@@ -0,0 +1,117 @@
|
||||
//
|
||||
// QXMyRoomListCell.m
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/12.
|
||||
//
|
||||
|
||||
#import "QXMyRoomListCell.h"
|
||||
#import "QXRoomDetailViewController.h"
|
||||
#import "QXRoomSubsidyViewController.h"
|
||||
|
||||
@interface QXMyRoomListCell()
|
||||
@property (nonatomic,strong)NSArray *bgImageNameArray;
|
||||
@end
|
||||
@implementation QXMyRoomListCell
|
||||
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
self.roomDetailBtn.backgroundColor = QXConfig.themeColor;
|
||||
[self.roomDetailBtn setTitleColor:QXConfig.btnTextColor forState:(UIControlStateNormal)];
|
||||
|
||||
[self.roomSubsidyBtn setTitleColor:UIColor.whiteColor forState:(UIControlStateNormal)];
|
||||
self.roomSubsidyBtn.backgroundColor = RGB16(0x333333);
|
||||
}
|
||||
-(void)setBgImageCount:(NSInteger)bgImageCount{
|
||||
_bgImageCount = bgImageCount;
|
||||
self.bgImageView.image = [UIImage imageNamed:self.bgImageNameArray[bgImageCount]];
|
||||
}
|
||||
-(void)setType:(NSInteger)type{
|
||||
_type = type;
|
||||
if (type == 0) {
|
||||
self.roomSubsidyBtn.hidden = NO;
|
||||
self.roomDetailBtn.hidden = NO;
|
||||
}else{
|
||||
self.roomSubsidyBtn.hidden = YES;
|
||||
self.roomDetailBtn.hidden = NO;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
//-(void)setModel:(SRLiveRoomModel *)model{
|
||||
// _model = model;
|
||||
// [self.headerImageView sd_setImageWithURL:[NSURL URLWithString:model.cover_picture] placeholderImage:[UIImage imageNamed:@"user_header_placehoulder"]];
|
||||
// self.nickNameLabel.text = model.room_name;
|
||||
// self.IDLabel.text = [NSString stringWithFormat:@"ID:%@",model.room_id];
|
||||
// NSString *fav = [NSString sr_showHotCountNum:model.favorite_count];
|
||||
// self.followLabel.text = [NSString stringWithFormat:@"关注:%@",fav];
|
||||
// NSString *online = [NSString sr_showHotCountNum:model.online_num];
|
||||
// self.onlineLabel.text = [NSString stringWithFormat:@"在线:%@",online];
|
||||
// NSString *come = [NSString sr_showHotCountNum:model.come_count];
|
||||
// self.comeCountLabel.text = [NSString stringWithFormat:@"访问:%@",come];
|
||||
// if (self.type == 0) {
|
||||
// self.todayLabel.text = @"今日收益";
|
||||
// }else{
|
||||
// self.todayLabel.text = [NSString stringWithFormat:@"收益分成比例:%@%%",model.earnings_ratio];
|
||||
// }
|
||||
// NSString *money = [NSString sr_showHotCountNum:model.today_income];
|
||||
// self.moneyLabel.text = [NSString stringWithFormat:@"%@",money];
|
||||
// [self.typeImageView sd_setImageWithURL:[NSURL URLWithString:model.label_icon] placeholderImage:nil];
|
||||
//// if ([model.label_id isEqualToString:@"111"]) {
|
||||
//// //游戏
|
||||
//// self.typeImageView.image = [UIImage imageNamed:@"Mask group 5"];
|
||||
//// }else if ([model.label_id isEqualToString:@"108"]) {
|
||||
//// //交友
|
||||
//// self.typeImageView.image = [UIImage imageNamed:@"Mask group 4"];
|
||||
//// }else{
|
||||
//// //聊天
|
||||
//// self.typeImageView.image = [UIImage imageNamed:@"Mask group 3"];
|
||||
//// }
|
||||
//}
|
||||
-(void)setModel:(QXRoomListModel *)model{
|
||||
_model = model;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:model.room_cover] placeholderImage:[UIImage imageNamed:@"user_header_placehoulder"]];
|
||||
self.nickNameLabel.text = model.room_name;
|
||||
self.IDLabel.text = [NSString stringWithFormat:@"ID:%@",model.room_number];
|
||||
NSString *fav = [NSString qx_showHotCountNum:model.follow_num.longLongValue];
|
||||
self.followLabel.text = [NSString stringWithFormat:@"关注:%@",fav];
|
||||
|
||||
NSString *online = [NSString qx_showHotCountNum:model.online_num.longLongValue];
|
||||
self.onlineLabel.text = [NSString stringWithFormat:@"在线:%@",online];
|
||||
NSString *come = [NSString qx_showHotCountNum:model.visit_num.longLongValue];
|
||||
self.comeCountLabel.text = [NSString stringWithFormat:@"访问:%@",come];
|
||||
if (self.type == 0) {
|
||||
self.todayLabel.text = @"今日收益";
|
||||
}else{
|
||||
self.todayLabel.text = [NSString stringWithFormat:@"收益分成比例:%@%%",model.ratio];
|
||||
}
|
||||
NSString *money = [NSString qx_showHotCountNum:model.today_profit.longLongValue];
|
||||
self.moneyLabel.text = [NSString stringWithFormat:@"%@",money];
|
||||
[self.typeImageView sd_setImageWithURL:[NSURL URLWithString:model.label_icon] placeholderImage:nil];
|
||||
if (model.apply_status.intValue == 1) {
|
||||
self.roomWaitImageView.hidden = NO;
|
||||
}else{
|
||||
self.roomWaitImageView.hidden = YES;
|
||||
}
|
||||
}
|
||||
- (IBAction)roomDetailAction:(id)sender {
|
||||
QXRoomDetailViewController *vc = [[QXRoomDetailViewController alloc] init];
|
||||
vc.type = self.type;
|
||||
vc.room_id = self.model.room_id;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
}
|
||||
- (IBAction)subsidyAction:(id)sender {
|
||||
QXRoomSubsidyViewController *vc = [[QXRoomSubsidyViewController alloc] init];
|
||||
vc.room_id = self.model.room_id;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
}
|
||||
|
||||
-(NSArray *)bgImageNameArray{
|
||||
if (!_bgImageNameArray) {
|
||||
_bgImageNameArray = @[@"Group 7026",@"Group 7024",@"Group 7025"];
|
||||
}
|
||||
return _bgImageNameArray;
|
||||
}
|
||||
@end
|
||||
227
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.xib
Normal file
227
QXLive/Mine(音域)/View/我的房间/QXMyRoomListCell.xib
Normal file
@@ -0,0 +1,227 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
|
||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" id="gTV-IL-0wX" customClass="QXMyRoomListCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="560" height="159"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
||||
<rect key="frame" x="0.0" y="0.0" width="560" height="159"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="kMB-zj-bvu">
|
||||
<rect key="frame" x="12" y="0.0" width="536" height="159"/>
|
||||
<subviews>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="t6e-Ib-pCi">
|
||||
<rect key="frame" x="0.0" y="0.0" width="536" height="159"/>
|
||||
<color key="backgroundColor" red="0.95686274509803915" green="1" blue="0.96470588235294119" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="10"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_header_placehoulder" translatesAutoresizingMaskIntoConstraints="NO" id="hCx-Bc-lup">
|
||||
<rect key="frame" x="14" y="21" width="65" height="65"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="65" id="Swl-8G-a2W"/>
|
||||
<constraint firstAttribute="height" constant="65" id="rWW-H6-KUK"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="6"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="n8c-Bl-dxD">
|
||||
<rect key="frame" x="87" y="21" width="38" height="17"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="38" id="1Pz-9J-qqg"/>
|
||||
<constraint firstAttribute="height" constant="17" id="hS9-SD-vrA"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="6"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="用户昵称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N2H-oT-j7d">
|
||||
<rect key="frame" x="133" y="20.666666666666668" width="59.666666666666657" height="18.000000000000004"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="15"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ID:123456789" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NQD-O5-Mxv">
|
||||
<rect key="frame" x="87" y="44" width="86.666666666666686" height="15.666666666666664"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="关注:1234" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gwx-5C-Dyi">
|
||||
<rect key="frame" x="86.999999999999986" y="70.333333333333329" width="145.66666666666663" height="15.666666666666671"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" white="0.5" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="在线:1.2W" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UEZ-KG-LO0">
|
||||
<rect key="frame" x="232.66666666666669" y="70.333333333333329" width="145.66666666666669" height="16"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" white="0.5" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="访问:1234" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="RxR-I5-aqT">
|
||||
<rect key="frame" x="378.33333333333331" y="70.333333333333329" width="145.66666666666669" height="16"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" white="0.5" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123W" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7dX-Cp-SDr">
|
||||
<rect key="frame" x="480.33333333333331" y="20" width="43.666666666666686" height="19.333333333333329"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="16"/>
|
||||
<color key="textColor" red="1" green="0.54117647059999996" blue="0.80000000000000004" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="今日收益" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xiq-z8-B3x">
|
||||
<rect key="frame" x="472.33333333333331" y="45.666666666666664" width="51.666666666666686" height="16"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" white="0.5" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="k0N-ev-a0T">
|
||||
<rect key="frame" x="12" y="99" width="512" height="0.6666666666666714"/>
|
||||
<color key="backgroundColor" red="0.88627450980392153" green="0.88627450980392153" blue="0.88627450980392153" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="0.5" id="Dhz-Jd-Tft"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ay1-ie-dOO">
|
||||
<rect key="frame" x="106" y="109.66666666666667" width="82" height="30.000000000000014"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="30" id="DWX-hC-OPc"/>
|
||||
<constraint firstAttribute="width" constant="82" id="bdv-Lj-M5Q"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
|
||||
<state key="normal" title="房间补贴"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="15"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
<connections>
|
||||
<action selector="subsidyAction:" destination="gTV-IL-0wX" eventType="touchUpInside" id="4uu-E6-s4b"/>
|
||||
</connections>
|
||||
</button>
|
||||
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="my_room_wait" translatesAutoresizingMaskIntoConstraints="NO" id="3bm-oL-g9B">
|
||||
<rect key="frame" x="466" y="89" width="64" height="64"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="64" id="Btr-TI-Qth"/>
|
||||
<constraint firstAttribute="width" constant="64" id="sSX-Jv-Huj"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="sme-1q-gFv">
|
||||
<rect key="frame" x="12" y="109.66666666666667" width="82" height="30.000000000000014"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="82" id="BB4-TU-RLg"/>
|
||||
<constraint firstAttribute="height" constant="30" id="eh6-C7-fpO"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
|
||||
<state key="normal" title="房间明细"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="15"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
<connections>
|
||||
<action selector="roomDetailAction:" destination="gTV-IL-0wX" eventType="touchUpInside" id="Lxe-l2-77m"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="gwx-5C-Dyi" firstAttribute="leading" secondItem="n8c-Bl-dxD" secondAttribute="leading" id="08v-sk-SNR"/>
|
||||
<constraint firstItem="UEZ-KG-LO0" firstAttribute="width" secondItem="gwx-5C-Dyi" secondAttribute="width" id="6FW-rs-eE1"/>
|
||||
<constraint firstItem="n8c-Bl-dxD" firstAttribute="top" secondItem="hCx-Bc-lup" secondAttribute="top" id="8eD-Qr-rlD"/>
|
||||
<constraint firstAttribute="bottom" secondItem="t6e-Ib-pCi" secondAttribute="bottom" id="AhH-J8-YGz"/>
|
||||
<constraint firstItem="sme-1q-gFv" firstAttribute="top" secondItem="k0N-ev-a0T" secondAttribute="bottom" constant="10" id="Bwd-Aa-dIn"/>
|
||||
<constraint firstItem="N2H-oT-j7d" firstAttribute="centerY" secondItem="n8c-Bl-dxD" secondAttribute="centerY" id="Cvt-jd-YRa"/>
|
||||
<constraint firstAttribute="trailing" secondItem="RxR-I5-aqT" secondAttribute="trailing" constant="12" id="EPe-MU-H2n"/>
|
||||
<constraint firstAttribute="trailing" secondItem="3bm-oL-g9B" secondAttribute="trailing" constant="6" id="FFG-1q-qus"/>
|
||||
<constraint firstItem="N2H-oT-j7d" firstAttribute="leading" secondItem="n8c-Bl-dxD" secondAttribute="trailing" constant="8" symbolic="YES" id="IUg-ec-S0W"/>
|
||||
<constraint firstItem="UEZ-KG-LO0" firstAttribute="leading" secondItem="gwx-5C-Dyi" secondAttribute="trailing" id="KiF-aV-j2i"/>
|
||||
<constraint firstItem="NQD-O5-Mxv" firstAttribute="leading" secondItem="n8c-Bl-dxD" secondAttribute="leading" id="LkZ-It-52D"/>
|
||||
<constraint firstItem="n8c-Bl-dxD" firstAttribute="leading" secondItem="hCx-Bc-lup" secondAttribute="trailing" constant="8" id="Ozs-3q-8HK"/>
|
||||
<constraint firstAttribute="trailing" secondItem="t6e-Ib-pCi" secondAttribute="trailing" id="Q80-US-afM"/>
|
||||
<constraint firstAttribute="bottom" secondItem="3bm-oL-g9B" secondAttribute="bottom" constant="6" id="Qrl-mz-QDv"/>
|
||||
<constraint firstItem="NQD-O5-Mxv" firstAttribute="top" secondItem="n8c-Bl-dxD" secondAttribute="bottom" constant="6" id="SEb-mJ-Hs3"/>
|
||||
<constraint firstItem="RxR-I5-aqT" firstAttribute="leading" secondItem="UEZ-KG-LO0" secondAttribute="trailing" id="SHN-YW-EED"/>
|
||||
<constraint firstItem="ay1-ie-dOO" firstAttribute="leading" secondItem="sme-1q-gFv" secondAttribute="trailing" constant="12" id="Uh7-dB-EuG"/>
|
||||
<constraint firstItem="RxR-I5-aqT" firstAttribute="centerY" secondItem="gwx-5C-Dyi" secondAttribute="centerY" id="VVf-mE-Zsv"/>
|
||||
<constraint firstItem="gwx-5C-Dyi" firstAttribute="bottom" secondItem="hCx-Bc-lup" secondAttribute="bottom" id="Zpq-MJ-IFT"/>
|
||||
<constraint firstItem="sme-1q-gFv" firstAttribute="leading" secondItem="kMB-zj-bvu" secondAttribute="leading" constant="12" id="bEe-Ns-MKE"/>
|
||||
<constraint firstItem="hCx-Bc-lup" firstAttribute="leading" secondItem="kMB-zj-bvu" secondAttribute="leading" constant="14" id="clK-gP-XU6"/>
|
||||
<constraint firstItem="UEZ-KG-LO0" firstAttribute="centerY" secondItem="gwx-5C-Dyi" secondAttribute="centerY" id="eNF-UM-jtW"/>
|
||||
<constraint firstItem="t6e-Ib-pCi" firstAttribute="top" secondItem="kMB-zj-bvu" secondAttribute="top" id="epf-k6-tdd"/>
|
||||
<constraint firstAttribute="trailing" secondItem="7dX-Cp-SDr" secondAttribute="trailing" constant="12" id="exw-Lu-6EK"/>
|
||||
<constraint firstItem="xiq-z8-B3x" firstAttribute="centerY" secondItem="hCx-Bc-lup" secondAttribute="centerY" id="hCb-to-coE"/>
|
||||
<constraint firstItem="k0N-ev-a0T" firstAttribute="top" secondItem="hCx-Bc-lup" secondAttribute="bottom" constant="13" id="hrQ-j8-uOu"/>
|
||||
<constraint firstItem="RxR-I5-aqT" firstAttribute="width" secondItem="gwx-5C-Dyi" secondAttribute="width" id="jH8-sQ-Y2W"/>
|
||||
<constraint firstItem="7dX-Cp-SDr" firstAttribute="centerY" secondItem="n8c-Bl-dxD" secondAttribute="centerY" id="k1v-v1-rfA"/>
|
||||
<constraint firstItem="hCx-Bc-lup" firstAttribute="top" secondItem="kMB-zj-bvu" secondAttribute="top" constant="21" id="lUy-k6-65s"/>
|
||||
<constraint firstAttribute="trailing" secondItem="k0N-ev-a0T" secondAttribute="trailing" constant="12" id="osG-Ae-UXc"/>
|
||||
<constraint firstItem="t6e-Ib-pCi" firstAttribute="leading" secondItem="kMB-zj-bvu" secondAttribute="leading" id="r2d-Lm-mmZ"/>
|
||||
<constraint firstItem="k0N-ev-a0T" firstAttribute="leading" secondItem="kMB-zj-bvu" secondAttribute="leading" constant="12" id="rB0-hW-4Ld"/>
|
||||
<constraint firstAttribute="trailing" secondItem="xiq-z8-B3x" secondAttribute="trailing" constant="12" id="ukL-M0-WWd"/>
|
||||
<constraint firstItem="ay1-ie-dOO" firstAttribute="centerY" secondItem="sme-1q-gFv" secondAttribute="centerY" id="vdN-zt-xpb"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<integer key="value" value="10"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
</subviews>
|
||||
</view>
|
||||
<constraints>
|
||||
<constraint firstAttribute="trailing" secondItem="kMB-zj-bvu" secondAttribute="trailing" constant="12" id="6om-tJ-1bC"/>
|
||||
<constraint firstItem="kMB-zj-bvu" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" id="e9u-jg-kXk"/>
|
||||
<constraint firstAttribute="bottom" secondItem="kMB-zj-bvu" secondAttribute="bottom" id="qDt-fJ-99W"/>
|
||||
<constraint firstItem="kMB-zj-bvu" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" constant="12" id="tz1-GN-mJn"/>
|
||||
</constraints>
|
||||
<size key="customSize" width="560" height="94"/>
|
||||
<connections>
|
||||
<outlet property="IDLabel" destination="NQD-O5-Mxv" id="T7K-Fu-olU"/>
|
||||
<outlet property="bgImageView" destination="t6e-Ib-pCi" id="kde-Zh-JSf"/>
|
||||
<outlet property="comeCountLabel" destination="RxR-I5-aqT" id="Ros-Uf-7C7"/>
|
||||
<outlet property="followLabel" destination="gwx-5C-Dyi" id="uTA-Os-MrH"/>
|
||||
<outlet property="headerImageView" destination="hCx-Bc-lup" id="bfX-FC-RjW"/>
|
||||
<outlet property="moneyLabel" destination="7dX-Cp-SDr" id="igl-zs-dLw"/>
|
||||
<outlet property="nickNameLabel" destination="N2H-oT-j7d" id="Zrg-Bj-xZR"/>
|
||||
<outlet property="onlineLabel" destination="UEZ-KG-LO0" id="XG2-KV-U11"/>
|
||||
<outlet property="roomDetailBtn" destination="sme-1q-gFv" id="bZb-3R-doL"/>
|
||||
<outlet property="roomSubsidyBtn" destination="ay1-ie-dOO" id="USR-Gf-Jf1"/>
|
||||
<outlet property="roomWaitImageView" destination="3bm-oL-g9B" id="Kwo-fW-Xr5"/>
|
||||
<outlet property="todayLabel" destination="xiq-z8-B3x" id="8ct-tt-KqL"/>
|
||||
<outlet property="typeImageView" destination="n8c-Bl-dxD" id="KCF-la-KYq"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="528.24427480916029" y="35.563380281690144"/>
|
||||
</collectionViewCell>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="my_room_wait" width="64" height="64"/>
|
||||
<image name="user_header_placehoulder" width="40" height="40"/>
|
||||
</resources>
|
||||
</document>
|
||||
38
QXLive/Mine(音域)/View/我的房间/QXRoomDetailHeaderView.h
Normal file
38
QXLive/Mine(音域)/View/我的房间/QXRoomDetailHeaderView.h
Normal file
@@ -0,0 +1,38 @@
|
||||
//
|
||||
// QXRoomDetailHeaderView.h
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/3/5.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "BRDatePickerView.h"
|
||||
#import "QXRoomWaterModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomDetailHeaderView : UIView
|
||||
@property (nonatomic,strong)QXRoomDetailModel *model;
|
||||
@property (nonatomic,copy)void(^chooseDateBlock)(NSString*startTime,NSString*endTime);
|
||||
@end
|
||||
|
||||
@interface QXDatePickerView : UIView
|
||||
@property (nonatomic,strong)UIView *bgView;
|
||||
@property (nonatomic,strong)UIButton *cancelBtn;
|
||||
@property (nonatomic,strong)UIButton *doneBtn;
|
||||
|
||||
@property (nonatomic,strong)UIButton *beginTimeBtn;
|
||||
@property (nonatomic,strong)UIView *beginTimeLine;
|
||||
@property (nonatomic,strong)UILabel *centerLabel;
|
||||
@property (nonatomic,strong)UIButton *endTimeBtn;
|
||||
@property (nonatomic,strong)UIView *endTimeLine;
|
||||
@property (nonatomic,strong)UIView *pickerBGView;
|
||||
@property (nonatomic,strong)BRDatePickerView *pickerView;
|
||||
@property (nonatomic, assign)BRDatePickerMode pickerMode;
|
||||
@property (nonatomic,strong)NSDate* beginDate;
|
||||
@property (nonatomic,strong)NSDate* endDate;
|
||||
@property (nonatomic,copy)void(^chooseDateBlock)(NSString*startTime,NSString*endTime);
|
||||
@property (nonatomic,copy)void(^selectedDateBlock)(NSString*startTime,NSDate*startDate,NSString*endTime,NSDate*endDate);
|
||||
-(void)show;
|
||||
-(void)hide;
|
||||
@end
|
||||
NS_ASSUME_NONNULL_END
|
||||
382
QXLive/Mine(音域)/View/我的房间/QXRoomDetailHeaderView.m
Normal file
382
QXLive/Mine(音域)/View/我的房间/QXRoomDetailHeaderView.m
Normal file
@@ -0,0 +1,382 @@
|
||||
//
|
||||
// QXRoomDetailHeaderView.m
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/3/5.
|
||||
//
|
||||
|
||||
#import "QXRoomDetailHeaderView.h"
|
||||
#import "UIButton+QX.h"
|
||||
|
||||
@class QXDatePickerView;
|
||||
@interface QXRoomDetailHeaderView()
|
||||
@property (nonatomic,strong)UIImageView*bigBgImageView;
|
||||
@property (nonatomic,strong)UIImageView*bgImageView;
|
||||
@property (nonatomic,strong)UIImageView*bottomBGView;
|
||||
@property (nonatomic,strong)UIImageView*allPriceImageView;
|
||||
@property (nonatomic,strong)UILabel*allPriceTitleLabel;
|
||||
@property (nonatomic,strong)UILabel*allPriceLabel;
|
||||
@property (nonatomic,strong)UILabel*allWaterTitleLabel;
|
||||
@property (nonatomic,strong)UILabel*allWaterLabel;
|
||||
@property (nonatomic,strong)UIImageView*allWaterImageView;
|
||||
@property (nonatomic,strong)UIButton*timeBtn;
|
||||
@property (nonatomic,strong)QXDatePickerView *pickerView;
|
||||
@end
|
||||
|
||||
@implementation QXRoomDetailHeaderView
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame
|
||||
{
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
[self initSubView];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
-(void)initSubView{
|
||||
self.backgroundColor = [UIColor clearColor];
|
||||
[self addSubview:self.bigBgImageView];
|
||||
[self.bigBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self);
|
||||
make.right.equalTo(self);
|
||||
make.top.equalTo(self);
|
||||
make.bottom.equalTo(self);
|
||||
}];
|
||||
|
||||
[self addSubview:self.bottomBGView];
|
||||
// [self.bottomBGView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
// make.left.equalTo(self);
|
||||
// make.right.equalTo(self);
|
||||
// make.top.equalTo(self);
|
||||
// make.bottom.equalTo(self);
|
||||
// }];
|
||||
|
||||
[self addSubview:self.bgImageView];
|
||||
[self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self).offset(16);
|
||||
make.right.equalTo(self).offset(-16);
|
||||
make.top.equalTo(self).offset(11+kSafeAreaTop+44);
|
||||
make.bottom.equalTo(self);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allPriceTitleLabel];
|
||||
[self.allPriceTitleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.bgImageView).offset(16);
|
||||
make.top.equalTo(self.bgImageView).offset(13);
|
||||
make.width.mas_equalTo(128);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allPriceImageView];
|
||||
[self.allPriceImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.allPriceTitleLabel);
|
||||
make.top.equalTo(self.bgImageView).offset(35);
|
||||
make.height.width.mas_equalTo(40);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allPriceLabel];
|
||||
[self.allPriceLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.allPriceImageView.mas_right).offset(5);
|
||||
make.top.equalTo(self.bgImageView).offset(32);
|
||||
make.right.equalTo(self.bgImageView).offset(-16);
|
||||
make.height.mas_equalTo(45);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allWaterTitleLabel];
|
||||
[self.allWaterTitleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.bgImageView).offset(16);
|
||||
make.top.equalTo(self.bgImageView).offset(87);
|
||||
make.right.equalTo(self.bgImageView).offset(-16);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allWaterImageView];
|
||||
[self.allWaterImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.allWaterTitleLabel);
|
||||
make.top.equalTo(self.bgImageView).offset(107);
|
||||
make.height.width.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self addSubview:self.allWaterLabel];
|
||||
[self.allWaterLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.equalTo(self.allWaterImageView.mas_right).offset(5);
|
||||
make.top.equalTo(self.bgImageView).offset(107);
|
||||
make.right.equalTo(self.bgImageView).offset(-16);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
|
||||
[self addSubview:self.timeBtn];
|
||||
[self.timeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.right.equalTo(self.bgImageView).offset(-12);
|
||||
make.centerY.equalTo(self.allPriceTitleLabel);
|
||||
make.width.mas_greaterThanOrEqualTo(60);
|
||||
make.height.mas_equalTo(40);
|
||||
}];
|
||||
}
|
||||
-(void)layoutSubviews{
|
||||
[super layoutSubviews];
|
||||
self.bottomBGView.bottom = self.height;
|
||||
}
|
||||
-(void)timeAction:(UIButton*)sender{
|
||||
[self.pickerView show];
|
||||
}
|
||||
-(void)setModel:(QXRoomDetailModel *)model{
|
||||
_model = model;
|
||||
self.allWaterLabel.text = [NSString stringWithFormat:@"%.2f",model.total_amount];;
|
||||
self.allPriceLabel.text = [NSString stringWithFormat:@"%.2f",model.total_earning];
|
||||
}
|
||||
|
||||
-(UIImageView *)bgImageView{
|
||||
if (!_bgImageView) {
|
||||
_bgImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"mine_room_water_bg"]];
|
||||
_bgImageView.contentMode = UIViewContentModeScaleToFill;
|
||||
}
|
||||
return _bgImageView;
|
||||
}
|
||||
-(UIImageView *)bigBgImageView{
|
||||
if (!_bigBgImageView) {
|
||||
_bigBgImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"detail_bg"]];
|
||||
_bigBgImageView.contentMode = UIViewContentModeScaleToFill;
|
||||
}
|
||||
return _bigBgImageView;
|
||||
}
|
||||
-(UIImageView *)bottomBGView{
|
||||
if (!_bottomBGView) {
|
||||
UIImage*img = [UIImage imageNamed:@"mine_room_water_bg"];
|
||||
CGFloat height = (SCREEN_WIDTH-32)/img.size.width*img.size.height;
|
||||
_bottomBGView = [[UIImageView alloc] initWithFrame:CGRectMake(0, kSafeAreaTop+44+height/2.0, SCREEN_WIDTH, height/2.0)];
|
||||
_bottomBGView.backgroundColor = [UIColor whiteColor];
|
||||
[_bottomBGView addRoundedCornersWithRadius:16 byRoundingCorners:(UIRectCornerTopRight|UIRectCornerTopLeft)];
|
||||
}
|
||||
return _bottomBGView;
|
||||
}
|
||||
-(UILabel *)allPriceTitleLabel{
|
||||
if (!_allPriceTitleLabel) {
|
||||
_allPriceTitleLabel = [[UILabel alloc] init];
|
||||
_allPriceTitleLabel.textColor = [UIColor colorWithHexString:@"#999999"];
|
||||
_allPriceTitleLabel.font = [UIFont systemFontOfSize:13];
|
||||
_allPriceTitleLabel.text = @"累计收益";
|
||||
}
|
||||
return _allPriceTitleLabel;
|
||||
}
|
||||
-(UILabel *)allPriceLabel{
|
||||
if (!_allPriceLabel) {
|
||||
_allPriceLabel = [[UILabel alloc] init];
|
||||
_allPriceLabel.textColor = [UIColor colorWithHexString:@"#333333"];
|
||||
_allPriceLabel.font = [UIFont boldSystemFontOfSize:33];
|
||||
_allPriceLabel.text = @"-";
|
||||
}
|
||||
return _allPriceLabel;
|
||||
}
|
||||
-(UILabel *)allWaterTitleLabel{
|
||||
if (!_allWaterTitleLabel) {
|
||||
_allWaterTitleLabel = [[UILabel alloc] init];
|
||||
_allWaterTitleLabel.textColor = [UIColor colorWithHexString:@"#999999"];
|
||||
_allWaterTitleLabel.font = [UIFont systemFontOfSize:13];
|
||||
_allWaterTitleLabel.text = @"累计流水";
|
||||
}
|
||||
return _allWaterTitleLabel;
|
||||
}
|
||||
-(UIImageView *)allWaterImageView{
|
||||
if (!_allWaterImageView) {
|
||||
_allWaterImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"wallet_corn"]];
|
||||
}
|
||||
return _allWaterImageView;
|
||||
}
|
||||
-(UIImageView *)allPriceImageView{
|
||||
if (!_allPriceImageView) {
|
||||
_allPriceImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"wallet_diamond"]];
|
||||
}
|
||||
return _allPriceImageView;
|
||||
}
|
||||
-(UILabel *)allWaterLabel{
|
||||
if (!_allWaterLabel) {
|
||||
_allWaterLabel = [[UILabel alloc] init];
|
||||
_allWaterLabel.textColor = [UIColor colorWithHexString:@"#333333"];
|
||||
_allWaterLabel.font = [UIFont boldSystemFontOfSize:14];
|
||||
_allWaterLabel.text = @"-";
|
||||
}
|
||||
return _allWaterLabel;
|
||||
}
|
||||
-(UIButton *)timeBtn{
|
||||
if (!_timeBtn) {
|
||||
_timeBtn = [[UIButton alloc] init];
|
||||
[_timeBtn setTitle:@"全部" forState:UIControlStateNormal];
|
||||
[_timeBtn setImage:[UIImage imageNamed:@"下拉"] forState:UIControlStateNormal];
|
||||
[_timeBtn setTitleColor:[UIColor colorWithHexString:@"#333333"] forState:(UIControlStateNormal)];
|
||||
_timeBtn.titleLabel.font = [UIFont systemFontOfSize:13];
|
||||
[_timeBtn qx_layoutButtonNOSizeToFitWithEdgeInsetsStyle:(QXButtonEdgeInsetsStyleRight) imageTitleSpace:3];
|
||||
[_timeBtn addTarget:self action:@selector(timeAction:) forControlEvents:(UIControlEventTouchUpInside)];
|
||||
}
|
||||
return _timeBtn;
|
||||
}
|
||||
-(QXDatePickerView *)pickerView{
|
||||
if (!_pickerView) {
|
||||
_pickerView = [[QXDatePickerView alloc] init];
|
||||
MJWeakSelf
|
||||
_pickerView.chooseDateBlock = ^(NSString * _Nonnull startTime, NSString * _Nonnull endTime) {
|
||||
[weakSelf.timeBtn setTitle:[NSString stringWithFormat:@"%@至%@",startTime,endTime] forState:(UIControlStateNormal)];
|
||||
[weakSelf.timeBtn qx_layoutButtonNOSizeToFitWithEdgeInsetsStyle:(QXButtonEdgeInsetsStyleRight) imageTitleSpace:3];
|
||||
if (weakSelf.chooseDateBlock) {
|
||||
weakSelf.chooseDateBlock(startTime, endTime);
|
||||
}
|
||||
};
|
||||
}
|
||||
return _pickerView;
|
||||
}
|
||||
@end
|
||||
|
||||
@implementation QXDatePickerView
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame
|
||||
{
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
self.frame = CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
[self createViews];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
-(void)createViews{
|
||||
self.backgroundColor = [UIColor colorWithWhite:0.0 alpha:0.5];
|
||||
self.bgView = [[UIView alloc] initWithFrame:CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH, ScaleWidth(400))];
|
||||
self.bgView.backgroundColor = [UIColor whiteColor];
|
||||
[self.bgView addRoundedCornersWithRadius:16 byRoundingCorners:(UIRectCornerTopLeft|UIRectCornerTopRight)];
|
||||
[self addSubview:self.bgView];
|
||||
|
||||
self.cancelBtn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 70, 40)];
|
||||
[self.cancelBtn setTitle:@"取消" forState:(UIControlStateNormal)];
|
||||
[self.cancelBtn setTitleColor:[UIColor colorWithHexString:@"#333333"] forState:(UIControlStateNormal)];
|
||||
self.cancelBtn.titleLabel.font = [UIFont systemFontOfSize:15];
|
||||
[self.cancelBtn addTarget:self action:@selector(cancelAction) forControlEvents:(UIControlEventTouchUpInside)];
|
||||
[self.bgView addSubview:self.cancelBtn];
|
||||
|
||||
self.doneBtn = [[UIButton alloc] initWithFrame:CGRectMake(self.bgView.width-70, 0, 70, 40)];
|
||||
[self.doneBtn setTitle:@"完成" forState:(UIControlStateNormal)];
|
||||
[self.doneBtn addTarget:self action:@selector(doneAction) forControlEvents:(UIControlEventTouchUpInside)];
|
||||
[self.doneBtn setTitleColor:[UIColor colorWithHexString:@"#333333"] forState:(UIControlStateNormal)];
|
||||
self.doneBtn.titleLabel.font = [UIFont systemFontOfSize:15];
|
||||
[self.bgView addSubview:self.doneBtn];
|
||||
|
||||
CGFloat btnWith = (self.bgView.width-40*2-25)/2.0;
|
||||
self.beginTimeBtn = [[UIButton alloc] initWithFrame:CGRectMake(40, self.cancelBtn.bottom, btnWith, 40)];
|
||||
[self.beginTimeBtn setTitle:@"开始时间" forState:(UIControlStateNormal)];
|
||||
[self.beginTimeBtn setTitleColor:[UIColor colorWithHexString:@"#BBBBBB"] forState:(UIControlStateNormal)];
|
||||
[self.beginTimeBtn setTitleColor:[UIColor colorWithHexString:@"#333333"] forState:(UIControlStateSelected)];
|
||||
[self.beginTimeBtn addTarget:self action:@selector(beginTimeAction) forControlEvents:(UIControlEventTouchUpInside)];
|
||||
self.beginTimeBtn.titleLabel.font = [UIFont systemFontOfSize:14.f];
|
||||
[self.bgView addSubview:self.beginTimeBtn];
|
||||
self.beginTimeLine = [[UIView alloc] initWithFrame:CGRectMake(self.beginTimeBtn.left, self.beginTimeBtn.bottom, btnWith, 1)];
|
||||
self.beginTimeLine.backgroundColor = [UIColor colorWithHexString:@"#BBBBBB"];
|
||||
[self.bgView addSubview:self.beginTimeLine];
|
||||
|
||||
self.endTimeBtn = [[UIButton alloc] initWithFrame:CGRectMake(self.bgView.width-40-btnWith, self.beginTimeBtn.top, btnWith, 40)];
|
||||
[self.endTimeBtn setTitle:@"结束时间" forState:(UIControlStateNormal)];
|
||||
[self.endTimeBtn setTitleColor:[UIColor colorWithHexString:@"#BBBBBB"] forState:(UIControlStateNormal)];
|
||||
[self.endTimeBtn setTitleColor:[UIColor colorWithHexString:@"#333333"] forState:(UIControlStateSelected)];
|
||||
[self.endTimeBtn addTarget:self action:@selector(endTimeAction) forControlEvents:(UIControlEventTouchUpInside)];
|
||||
self.endTimeBtn.titleLabel.font = [UIFont systemFontOfSize:14.f];
|
||||
[self.bgView addSubview:self.endTimeBtn];
|
||||
self.endTimeLine = [[UIView alloc] initWithFrame:CGRectMake(self.endTimeBtn.left, self.endTimeBtn.bottom, btnWith, 1)];
|
||||
self.endTimeLine.backgroundColor = [UIColor colorWithHexString:@"#BBBBBB"];
|
||||
[self.bgView addSubview:self.endTimeLine];
|
||||
|
||||
self.centerLabel = [[UILabel alloc] initWithFrame:CGRectMake(self.beginTimeBtn.right, self.beginTimeBtn.top, self.endTimeBtn.left-self.beginTimeBtn.right, 40)];
|
||||
self.centerLabel.textAlignment = NSTextAlignmentCenter;
|
||||
self.centerLabel.text = @"至";
|
||||
self.centerLabel.textColor = [UIColor colorWithHexString:@"#666666"];
|
||||
self.centerLabel.font = [UIFont systemFontOfSize:14];
|
||||
[self.bgView addSubview:self.centerLabel];
|
||||
|
||||
self.pickerBGView = [[UIView alloc] initWithFrame:CGRectMake(0, self.beginTimeBtn.bottom+15, self.bgView.width, self.bgView.height-self.beginTimeBtn.bottom-30)];
|
||||
[self.bgView addSubview:self.pickerBGView];
|
||||
|
||||
[self.pickerView addPickerToView:self.pickerBGView];
|
||||
[self beginTimeAction];
|
||||
}
|
||||
|
||||
-(void)beginTimeAction{
|
||||
self.beginTimeBtn.selected = YES;
|
||||
self.beginTimeLine.backgroundColor = [UIColor colorWithHexString:@"#333333"];
|
||||
|
||||
self.endTimeBtn.selected = NO;
|
||||
self.endTimeLine.backgroundColor = [UIColor colorWithHexString:@"#BBBBBB"];
|
||||
}
|
||||
|
||||
-(void)endTimeAction{
|
||||
self.endTimeBtn.selected = YES;
|
||||
self.endTimeLine.backgroundColor = [UIColor colorWithHexString:@"#333333"];
|
||||
|
||||
self.beginTimeBtn.selected = NO;
|
||||
self.beginTimeLine.backgroundColor = [UIColor colorWithHexString:@"#BBBBBB"];
|
||||
}
|
||||
-(void)cancelAction{
|
||||
[self hide];
|
||||
}
|
||||
-(void)doneAction{
|
||||
if ([self.beginTimeBtn.titleLabel.text isEqualToString:@"开始时间"]) {
|
||||
showToast(@"请选择开始时间");
|
||||
return;
|
||||
}
|
||||
if ([self.endTimeBtn.titleLabel.text isEqualToString:@"结束时间"]) {
|
||||
showToast(@"请选择结束时间");
|
||||
return;
|
||||
}
|
||||
NSComparisonResult result = [self.endDate compare:self.beginDate];
|
||||
if (result == NSOrderedAscending) {
|
||||
showToast(@"结束时间早于开始时间");
|
||||
return;
|
||||
}
|
||||
[self hide];
|
||||
if (self.chooseDateBlock) {
|
||||
self.chooseDateBlock(self.beginTimeBtn.titleLabel.text, self.endTimeBtn.titleLabel.text);
|
||||
}
|
||||
if (self.selectedDateBlock) {
|
||||
self.selectedDateBlock(self.beginTimeBtn.titleLabel.text, self.beginDate, self.endTimeBtn.titleLabel.text, self.endDate);
|
||||
}
|
||||
}
|
||||
-(void)show{
|
||||
for (UIWindow *w in [UIApplication sharedApplication].windows) {
|
||||
if ([w isKeyWindow]) {
|
||||
[w addSubview:self];
|
||||
break;
|
||||
}
|
||||
}
|
||||
[UIView animateWithDuration:0.3 animations:^{
|
||||
self.bgView.y = SCREEN_HEIGHT-ScaleWidth(400);
|
||||
}];
|
||||
}
|
||||
-(void)hide{
|
||||
[UIView animateWithDuration:0.3 animations:^{
|
||||
self.bgView.y = SCREEN_HEIGHT;
|
||||
} completion:^(BOOL finished) {
|
||||
[self removeFromSuperview];
|
||||
}];
|
||||
}
|
||||
-(void)setPickerMode:(BRDatePickerMode)pickerMode{
|
||||
_pickerMode = pickerMode;
|
||||
self.pickerView.pickerMode = pickerMode;
|
||||
}
|
||||
-(BRDatePickerView *)pickerView{
|
||||
if (!_pickerView) {
|
||||
_pickerView = [[BRDatePickerView alloc] initWithPickerMode:BRDatePickerModeYMD];
|
||||
_pickerView.maxDate = [NSDate date];
|
||||
_pickerView.minDate = [NSDate br_setYear:2020];
|
||||
_pickerView.selectDate = [NSDate date];
|
||||
_pickerView.isAutoSelect = YES;
|
||||
MJWeakSelf
|
||||
_pickerView.resultBlock = ^(NSDate * _Nullable selectDate, NSString * _Nullable selectValue) {
|
||||
if (weakSelf.beginTimeBtn.selected) {
|
||||
[weakSelf.beginTimeBtn setTitle:selectValue forState:(UIControlStateNormal)];
|
||||
weakSelf.beginDate = selectDate;
|
||||
}else{
|
||||
[weakSelf.endTimeBtn setTitle:selectValue forState:(UIControlStateNormal)];
|
||||
weakSelf.endDate = selectDate;
|
||||
}
|
||||
};
|
||||
}
|
||||
return _pickerView;
|
||||
}
|
||||
@end
|
||||
21
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.h
Normal file
21
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.h
Normal file
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// QXRoomSubsidyCell.h
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/23.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "QXSubsidyModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomSubsidyCell : UITableViewCell
|
||||
@property (weak, nonatomic) IBOutlet UILabel *titleLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *ststusLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *allWaterLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *subsidyLabel;
|
||||
@property (nonatomic,strong) QXSubsidyDetailModel *model;
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
36
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.m
Normal file
36
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.m
Normal file
@@ -0,0 +1,36 @@
|
||||
//
|
||||
// QXRoomSubsidyCell.m
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/23.
|
||||
//
|
||||
|
||||
#import "QXRoomSubsidyCell.h"
|
||||
|
||||
@implementation QXRoomSubsidyCell
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView{
|
||||
static NSString *cellId = @"QXRoomSubsidyCell";
|
||||
QXRoomSubsidyCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId];
|
||||
if (!cell) {
|
||||
cell = [[NSBundle mainBundle] loadNibNamed:cellId owner:nil options:nil].lastObject;
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
-(void)setModel:(QXSubsidyDetailModel *)model{
|
||||
_model = model;
|
||||
self.allWaterLabel.text = [NSString stringWithFormat:@"累计流水:%.1f",model.total_transaction.doubleValue];
|
||||
self.subsidyLabel.text = [NSString stringWithFormat:@"获得补贴:%.1f",model.subsidy_amount.doubleValue];
|
||||
self.ststusLabel.text = model.status==1?@"已发放":@"未发放";
|
||||
}
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
|
||||
[super setSelected:selected animated:animated];
|
||||
|
||||
// Configure the view for the selected state
|
||||
}
|
||||
|
||||
@end
|
||||
76
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.xib
Normal file
76
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyCell.xib
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" rowHeight="117" id="KGk-i7-Jjw" customClass="QXRoomSubsidyCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="503" height="117"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
|
||||
<rect key="frame" x="0.0" y="0.0" width="503" height="117"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UR5-5B-xN6">
|
||||
<rect key="frame" x="16.000000000000004" y="11.999999999999998" width="42.333333333333343" height="19.333333333333329"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="16"/>
|
||||
<color key="textColor" red="0.28627450980000002" green="0.28627450980000002" blue="0.28627450980000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="nYK-5C-hPt">
|
||||
<rect key="frame" x="451" y="13.333333333333336" width="36" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kPU-jb-4hy">
|
||||
<rect key="frame" x="16.000000000000004" y="88" width="35.333333333333343" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="1" green="0.54117647058823526" blue="0.80000000000000004" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qzG-cY-9Rw">
|
||||
<rect key="frame" x="451" y="88" width="36" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.69803921568627447" green="0.396078431372549" blue="0.98039215686274506" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Gh3-4f-DsJ">
|
||||
<rect key="frame" x="16" y="58" width="471" height="1"/>
|
||||
<color key="backgroundColor" red="0.92549019607843142" green="0.92549019607843142" blue="0.92549019607843142" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="1" id="QMb-fA-36Y"/>
|
||||
</constraints>
|
||||
</view>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="Gh3-4f-DsJ" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="4A7-l3-afF"/>
|
||||
<constraint firstItem="kPU-jb-4hy" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="4gz-q1-clm"/>
|
||||
<constraint firstItem="qzG-cY-9Rw" firstAttribute="centerY" secondItem="kPU-jb-4hy" secondAttribute="centerY" id="KZb-Hb-vTS"/>
|
||||
<constraint firstAttribute="bottom" secondItem="kPU-jb-4hy" secondAttribute="bottom" constant="12" id="Mqk-fc-ej8"/>
|
||||
<constraint firstItem="UR5-5B-xN6" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="QFg-RN-8Qa"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Gh3-4f-DsJ" secondAttribute="trailing" constant="16" id="ZTX-hU-e3i"/>
|
||||
<constraint firstItem="Gh3-4f-DsJ" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="bXL-7Z-ee8"/>
|
||||
<constraint firstAttribute="trailing" secondItem="nYK-5C-hPt" secondAttribute="trailing" constant="16" id="dRW-2J-pgO"/>
|
||||
<constraint firstAttribute="trailing" secondItem="qzG-cY-9Rw" secondAttribute="trailing" constant="16" id="mOA-Co-wax"/>
|
||||
<constraint firstItem="UR5-5B-xN6" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="12" id="qK0-WO-1kB"/>
|
||||
<constraint firstItem="nYK-5C-hPt" firstAttribute="centerY" secondItem="UR5-5B-xN6" secondAttribute="centerY" id="tT5-eT-9d4"/>
|
||||
</constraints>
|
||||
</tableViewCellContentView>
|
||||
<viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
|
||||
<connections>
|
||||
<outlet property="allWaterLabel" destination="kPU-jb-4hy" id="Taw-JH-3US"/>
|
||||
<outlet property="ststusLabel" destination="nYK-5C-hPt" id="KAo-ro-KJ5"/>
|
||||
<outlet property="subsidyLabel" destination="qzG-cY-9Rw" id="J65-1P-DAO"/>
|
||||
<outlet property="titleLabel" destination="UR5-5B-xN6" id="xvb-1y-7yC"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="278.62595419847327" y="45.422535211267608"/>
|
||||
</tableViewCell>
|
||||
</objects>
|
||||
</document>
|
||||
21
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.h
Normal file
21
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.h
Normal file
@@ -0,0 +1,21 @@
|
||||
//
|
||||
// QXRoomSubsidyHistoryCell.h
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/23.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "QXSubsidyModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomSubsidyHistoryCell : UITableViewCell
|
||||
@property (weak, nonatomic) IBOutlet UILabel *timeLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *allWaterLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *subsidyLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *statusLabel;
|
||||
@property (nonatomic,strong)QXSubsidyHistoryModel *model;
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
38
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.m
Normal file
38
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.m
Normal file
@@ -0,0 +1,38 @@
|
||||
//
|
||||
// QXRoomSubsidyHistoryCell.m
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/4/23.
|
||||
//
|
||||
|
||||
#import "QXRoomSubsidyHistoryCell.h"
|
||||
|
||||
@implementation QXRoomSubsidyHistoryCell
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView{
|
||||
static NSString *cellId = @"QXRoomSubsidyHistoryCell";
|
||||
QXRoomSubsidyHistoryCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId];
|
||||
if (!cell) {
|
||||
cell = [[NSBundle mainBundle] loadNibNamed:cellId owner:nil options:nil].lastObject;
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
-(void)setModel:(QXSubsidyHistoryModel *)model{
|
||||
_model = model;
|
||||
self.allWaterLabel.text = [NSString stringWithFormat:@"%.1f",model.total_transaction.doubleValue];
|
||||
self.subsidyLabel.text = [NSString stringWithFormat:@"%.1f",model.subsidy_amount.doubleValue];
|
||||
self.timeLabel.text = [NSString stringWithFormat:@"%@-%@",model.start_time,model.end_time];
|
||||
self.statusLabel.text = model.status==1?@"已发放":@"未发放";
|
||||
self.statusLabel.textColor = model.status==1?[UIColor colorWithHexString:@"#999999"]:[UIColor colorWithHexString:@"#45D08C"];
|
||||
}
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
|
||||
[super setSelected:selected animated:animated];
|
||||
|
||||
// Configure the view for the selected state
|
||||
}
|
||||
|
||||
@end
|
||||
76
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.xib
Normal file
76
QXLive/Mine(音域)/View/我的房间/QXRoomSubsidyHistoryCell.xib
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" rowHeight="83" id="KGk-i7-Jjw" customClass="QXRoomSubsidyHistoryCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="425" height="83"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
|
||||
<rect key="frame" x="0.0" y="0.0" width="425" height="83"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2zi-eo-2ps">
|
||||
<rect key="frame" x="16" y="33" width="145" height="17"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="145" id="3bZ-ss-pcv"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="loq-dz-VQy">
|
||||
<rect key="frame" x="284" y="33" width="65" height="17"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="65" id="35B-OT-cUY"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7Lc-Lt-9ql">
|
||||
<rect key="frame" x="359" y="33" width="50" height="17"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="50" id="IYN-az-Gz2"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="owo-ey-ihf">
|
||||
<rect key="frame" x="171" y="33" width="103" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="2zi-eo-2ps" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="5gC-Z6-Kmd"/>
|
||||
<constraint firstItem="2zi-eo-2ps" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="6OL-ko-Ucx"/>
|
||||
<constraint firstAttribute="trailing" secondItem="7Lc-Lt-9ql" secondAttribute="trailing" constant="16" id="C46-cS-qVe"/>
|
||||
<constraint firstItem="7Lc-Lt-9ql" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="ETn-cT-Izd"/>
|
||||
<constraint firstItem="owo-ey-ihf" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="O8E-j3-Xcx"/>
|
||||
<constraint firstItem="7Lc-Lt-9ql" firstAttribute="leading" secondItem="loq-dz-VQy" secondAttribute="trailing" constant="10" id="ZQV-zN-mAX"/>
|
||||
<constraint firstItem="loq-dz-VQy" firstAttribute="leading" secondItem="owo-ey-ihf" secondAttribute="trailing" constant="10" id="fzO-pK-ePn"/>
|
||||
<constraint firstItem="loq-dz-VQy" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="nRg-Tp-DgM"/>
|
||||
<constraint firstItem="owo-ey-ihf" firstAttribute="leading" secondItem="2zi-eo-2ps" secondAttribute="trailing" constant="10" id="ycF-fG-qTf"/>
|
||||
</constraints>
|
||||
</tableViewCellContentView>
|
||||
<viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
|
||||
<connections>
|
||||
<outlet property="allWaterLabel" destination="owo-ey-ihf" id="Bky-TJ-5OU"/>
|
||||
<outlet property="statusLabel" destination="7Lc-Lt-9ql" id="c2d-ji-cbZ"/>
|
||||
<outlet property="subsidyLabel" destination="loq-dz-VQy" id="fdL-3Z-HAS"/>
|
||||
<outlet property="timeLabel" destination="2zi-eo-2ps" id="qGb-WO-qeC"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="3.8167938931297707" y="13.028169014084508"/>
|
||||
</tableViewCell>
|
||||
</objects>
|
||||
</document>
|
||||
25
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.h
Normal file
25
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.h
Normal file
@@ -0,0 +1,25 @@
|
||||
//
|
||||
// QXRoomWaterListCell.h
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/3/5.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "QXRoomSubsidyViewController.h"
|
||||
#import "QXRoomWaterModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXRoomWaterListCell : UITableViewCell
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *headerImageView;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *detailLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *priceLabel;
|
||||
|
||||
@property (nonatomic,strong)QXRoomWaterDetailModel *model;
|
||||
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView;
|
||||
@end
|
||||
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
39
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.m
Normal file
39
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.m
Normal file
@@ -0,0 +1,39 @@
|
||||
//
|
||||
// QXRoomWaterListCell.m
|
||||
// IsLandVoice
|
||||
//
|
||||
// Created by 启星 on 2025/3/5.
|
||||
//
|
||||
|
||||
#import "QXRoomWaterListCell.h"
|
||||
|
||||
@implementation QXRoomWaterListCell
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView{
|
||||
static NSString *cellId = @"QXRoomWaterListCell";
|
||||
QXRoomWaterListCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId];
|
||||
if (!cell) {
|
||||
cell = [[NSBundle mainBundle] loadNibNamed:cellId owner:nil options:nil].lastObject;
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
-(void)setModel:(QXRoomWaterDetailModel *)model{
|
||||
_model = model;
|
||||
self.nameLabel.text = model.sender_nickname;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:model.sender_avatar] placeholderImage:[UIImage imageNamed:@"user_header_placehoulder"]];
|
||||
self.priceLabel.text = [NSString stringWithFormat:@"+%@",model.total_price];
|
||||
self.detailLabel.text = [NSString stringWithFormat:@"赠送 %@ %@x%@",model.receive_nickname,model.gift_name,model.number];
|
||||
|
||||
}
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
|
||||
[super setSelected:selected animated:animated];
|
||||
|
||||
// Configure the view for the selected state
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
85
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.xib
Normal file
85
QXLive/Mine(音域)/View/我的房间/QXRoomWaterListCell.xib
Normal file
@@ -0,0 +1,85 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||
<device id="retina6_12" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" rowHeight="107" id="KGk-i7-Jjw" customClass="QXRoomWaterListCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="507" height="107"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
|
||||
<rect key="frame" x="0.0" y="0.0" width="507" height="107"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_header_placehoulder" translatesAutoresizingMaskIntoConstraints="NO" id="nkf-mf-eKj">
|
||||
<rect key="frame" x="16" y="33" width="41" height="41"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="41" id="RxF-Ai-6xe"/>
|
||||
<constraint firstAttribute="width" constant="41" id="gYA-4Y-hpp"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
|
||||
<real key="value" value="20.5"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="有你在身边" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8hM-GO-e2F">
|
||||
<rect key="frame" x="73" y="33" width="69.666666666666686" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="赠送 摸鱼" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="z01-RY-Nhw">
|
||||
<rect key="frame" x="73" y="58.333333333333336" width="55.333333333333343" height="15.666666666666664"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="13"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="+10.5元" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2nf-4S-3Rw">
|
||||
<rect key="frame" x="440" y="45" width="51" height="17"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lo0-vK-rqG">
|
||||
<rect key="frame" x="16" y="106.66666666666667" width="475" height="0.3333333333333286"/>
|
||||
<color key="backgroundColor" red="0.92549019607843142" green="0.92549019607843142" blue="0.92549019607843142" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="0.5" id="wSX-sv-RRQ"/>
|
||||
</constraints>
|
||||
</view>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="z01-RY-Nhw" firstAttribute="leading" secondItem="8hM-GO-e2F" secondAttribute="leading" id="LfE-bv-gr9"/>
|
||||
<constraint firstItem="nkf-mf-eKj" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="RH8-NF-gom"/>
|
||||
<constraint firstItem="nkf-mf-eKj" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="TVP-9J-v1o"/>
|
||||
<constraint firstAttribute="trailing" secondItem="2nf-4S-3Rw" secondAttribute="trailing" constant="16" id="UMD-nM-f2y"/>
|
||||
<constraint firstItem="z01-RY-Nhw" firstAttribute="bottom" secondItem="nkf-mf-eKj" secondAttribute="bottom" id="aXU-Jz-NJE"/>
|
||||
<constraint firstItem="8hM-GO-e2F" firstAttribute="top" secondItem="nkf-mf-eKj" secondAttribute="top" id="eZY-bd-wIy"/>
|
||||
<constraint firstItem="2nf-4S-3Rw" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="hja-Wp-5Db"/>
|
||||
<constraint firstAttribute="bottom" secondItem="lo0-vK-rqG" secondAttribute="bottom" id="jXl-Gu-aPk"/>
|
||||
<constraint firstAttribute="trailing" secondItem="lo0-vK-rqG" secondAttribute="trailing" constant="16" id="kjz-nU-ogz"/>
|
||||
<constraint firstItem="lo0-vK-rqG" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="16" id="oH0-Up-tmQ"/>
|
||||
<constraint firstItem="8hM-GO-e2F" firstAttribute="leading" secondItem="nkf-mf-eKj" secondAttribute="trailing" constant="16" id="vYA-ob-nie"/>
|
||||
</constraints>
|
||||
</tableViewCellContentView>
|
||||
<viewLayoutGuide key="safeArea" id="aW0-zy-SZf"/>
|
||||
<connections>
|
||||
<outlet property="detailLabel" destination="z01-RY-Nhw" id="h2T-ML-JME"/>
|
||||
<outlet property="headerImageView" destination="nkf-mf-eKj" id="zNR-ta-foX"/>
|
||||
<outlet property="nameLabel" destination="8hM-GO-e2F" id="nHO-a5-7aY"/>
|
||||
<outlet property="priceLabel" destination="2nf-4S-3Rw" id="2zd-Nj-Xli"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="281.67938931297709" y="41.197183098591552"/>
|
||||
</tableViewCell>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="user_header_placehoulder" width="128" height="128"/>
|
||||
</resources>
|
||||
</document>
|
||||
Reference in New Issue
Block a user