房间s1的UI 已经布局完成 开始接入云信
This commit is contained in:
2
Podfile
2
Podfile
@@ -39,5 +39,7 @@ target 'xplan-ios' do
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/QQ'
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/WeChat'
|
||||
pod 'mob_sharesdk/ShareSDKPlatforms/Apple'
|
||||
#调试
|
||||
pod 'LookinServer', :configurations => ['Debug']
|
||||
|
||||
end
|
||||
|
@@ -19,6 +19,7 @@ PODS:
|
||||
- FFPopup (1.1.5)
|
||||
- HappyDNS (0.3.17)
|
||||
- IAPHelper (1.1)
|
||||
- LookinServer (1.0.4)
|
||||
- MarqueeLabel-ObjC (3.3.0)
|
||||
- Masonry (1.1.0)
|
||||
- MBProgressHUD (1.2.0)
|
||||
@@ -57,6 +58,7 @@ DEPENDENCIES:
|
||||
- Base64
|
||||
- FFPopup
|
||||
- IAPHelper
|
||||
- LookinServer
|
||||
- MarqueeLabel-ObjC
|
||||
- Masonry
|
||||
- MBProgressHUD
|
||||
@@ -82,6 +84,7 @@ SPEC REPOS:
|
||||
- FFPopup
|
||||
- HappyDNS
|
||||
- IAPHelper
|
||||
- LookinServer
|
||||
- MarqueeLabel-ObjC
|
||||
- Masonry
|
||||
- MBProgressHUD
|
||||
@@ -104,6 +107,7 @@ SPEC CHECKSUMS:
|
||||
FFPopup: a208dcee8db3e54ec4a88fcd6481f6f5d85b7a83
|
||||
HappyDNS: 848ef73e24f2b0e2752064223ce2dc0dd88900ea
|
||||
IAPHelper: fd74f53b0ac142eed085777b88b86a11746a2dd4
|
||||
LookinServer: 743c1681771d0a8dcc38825325a080c3186404a5
|
||||
MarqueeLabel-ObjC: 696eaa82e4fcc7fb53e4fdf37ac138f03bf022d6
|
||||
Masonry: 678fab65091a9290e40e2832a55e7ab731aad201
|
||||
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
|
||||
@@ -119,6 +123,6 @@ SPEC CHECKSUMS:
|
||||
SZTextView: 094dc6acc9beec537685c545d6e3e0d4975174e1
|
||||
YYText: 5c461d709e24d55a182d1441c41dc639a18a4849
|
||||
|
||||
PODFILE CHECKSUM: 111c1baf4d2041d86b97a47854c455685b233ed1
|
||||
PODFILE CHECKSUM: 359c488aca65b2f81870e252d1da6f7da7b45dd5
|
||||
|
||||
COCOAPODS: 1.10.1
|
||||
|
@@ -127,6 +127,11 @@
|
||||
E86596462701612D00846EBD /* UIImageView+Vague.m in Sources */ = {isa = PBXBuildFile; fileRef = E86596452701612D00846EBD /* UIImageView+Vague.m */; };
|
||||
E86596512701A1C000846EBD /* StatisticsService.m in Sources */ = {isa = PBXBuildFile; fileRef = E86596502701A1C000846EBD /* StatisticsService.m */; };
|
||||
E86596542701A55500846EBD /* StatisticsServiceHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = E86596532701A55500846EBD /* StatisticsServiceHelper.m */; };
|
||||
E868070A271959DB0024F48F /* XPRoomPositionView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8680709271959DB0024F48F /* XPRoomPositionView.m */; };
|
||||
E868070F27195DD30024F48F /* XPRoomPositionLayoutImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = E868070E27195DD30024F48F /* XPRoomPositionLayoutImpl.m */; };
|
||||
E868071327195E1A0024F48F /* XPRoomPositionDataSourceImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = E868071227195E1A0024F48F /* XPRoomPositionDataSourceImpl.m */; };
|
||||
E8680718271967B00024F48F /* XPRoomPostionBaseItemView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8680717271967B00024F48F /* XPRoomPostionBaseItemView.m */; };
|
||||
E868071B271969A50024F48F /* XCRoomPostionNickView.m in Sources */ = {isa = PBXBuildFile; fileRef = E868071A271969A50024F48F /* XCRoomPostionNickView.m */; };
|
||||
E872308926E89BE000B90D4F /* LoginPhoneViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E872308826E89BE000B90D4F /* LoginPhoneViewController.m */; };
|
||||
E872308D26E89DAA00B90D4F /* LoginInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = E872308C26E89DAA00B90D4F /* LoginInputView.m */; };
|
||||
E872309326E8D31500B90D4F /* LoginVerifCodeView.m in Sources */ = {isa = PBXBuildFile; fileRef = E872309226E8D31500B90D4F /* LoginVerifCodeView.m */; };
|
||||
@@ -176,7 +181,7 @@
|
||||
E8AEAEED27141AE20017FCE0 /* XPRoomBackUIView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEEC27141AE20017FCE0 /* XPRoomBackUIView.m */; };
|
||||
E8AEAEF027141C430017FCE0 /* XPRoomBottomMenuView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEEF27141C430017FCE0 /* XPRoomBottomMenuView.m */; };
|
||||
E8AEAEF327141C7C0017FCE0 /* XPRoomMessageView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEF227141C7C0017FCE0 /* XPRoomMessageView.m */; };
|
||||
E8AEAEF627141C910017FCE0 /* XPRoomPositionView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEF527141C910017FCE0 /* XPRoomPositionView.m */; };
|
||||
E8AEAEF627141C910017FCE0 /* XPRoomPositionContainView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEF527141C910017FCE0 /* XPRoomPositionContainView.m */; };
|
||||
E8AEAEF927141CA30017FCE0 /* XPRoomInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AEAEF827141CA30017FCE0 /* XPRoomInfoView.m */; };
|
||||
E8B825B726E9A7D8009E8E9F /* BaseObject.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B825B626E9A7D8009E8E9F /* BaseObject.m */; };
|
||||
E8B825BF26E9E57D009E8E9F /* LoginTicketInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B825BE26E9E57D009E8E9F /* LoginTicketInfo.m */; };
|
||||
@@ -453,6 +458,18 @@
|
||||
E86596502701A1C000846EBD /* StatisticsService.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StatisticsService.m; sourceTree = "<group>"; };
|
||||
E86596522701A55500846EBD /* StatisticsServiceHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StatisticsServiceHelper.h; sourceTree = "<group>"; };
|
||||
E86596532701A55500846EBD /* StatisticsServiceHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StatisticsServiceHelper.m; sourceTree = "<group>"; };
|
||||
E8680708271959DB0024F48F /* XPRoomPositionView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionView.h; sourceTree = "<group>"; };
|
||||
E8680709271959DB0024F48F /* XPRoomPositionView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPositionView.m; sourceTree = "<group>"; };
|
||||
E868070D27195DD30024F48F /* XPRoomPositionLayoutImpl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionLayoutImpl.h; sourceTree = "<group>"; };
|
||||
E868070E27195DD30024F48F /* XPRoomPositionLayoutImpl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPositionLayoutImpl.m; sourceTree = "<group>"; };
|
||||
E868071027195DF00024F48F /* XPRoomPositionLayoutProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionLayoutProtocol.h; sourceTree = "<group>"; };
|
||||
E868071127195E1A0024F48F /* XPRoomPositionDataSourceImpl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionDataSourceImpl.h; sourceTree = "<group>"; };
|
||||
E868071227195E1A0024F48F /* XPRoomPositionDataSourceImpl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPositionDataSourceImpl.m; sourceTree = "<group>"; };
|
||||
E868071427195E340024F48F /* XPRoomPositionDataSourceProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionDataSourceProtocol.h; sourceTree = "<group>"; };
|
||||
E8680716271967B00024F48F /* XPRoomPostionBaseItemView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPostionBaseItemView.h; sourceTree = "<group>"; };
|
||||
E8680717271967B00024F48F /* XPRoomPostionBaseItemView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPostionBaseItemView.m; sourceTree = "<group>"; };
|
||||
E8680719271969A50024F48F /* XCRoomPostionNickView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XCRoomPostionNickView.h; sourceTree = "<group>"; };
|
||||
E868071A271969A50024F48F /* XCRoomPostionNickView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XCRoomPostionNickView.m; sourceTree = "<group>"; };
|
||||
E872308726E89BE000B90D4F /* LoginPhoneViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LoginPhoneViewController.h; sourceTree = "<group>"; };
|
||||
E872308826E89BE000B90D4F /* LoginPhoneViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LoginPhoneViewController.m; sourceTree = "<group>"; };
|
||||
E872308B26E89DAA00B90D4F /* LoginInputView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LoginInputView.h; sourceTree = "<group>"; };
|
||||
@@ -546,8 +563,8 @@
|
||||
E8AEAEEF27141C430017FCE0 /* XPRoomBottomMenuView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomBottomMenuView.m; sourceTree = "<group>"; };
|
||||
E8AEAEF127141C7C0017FCE0 /* XPRoomMessageView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMessageView.h; sourceTree = "<group>"; };
|
||||
E8AEAEF227141C7C0017FCE0 /* XPRoomMessageView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMessageView.m; sourceTree = "<group>"; };
|
||||
E8AEAEF427141C910017FCE0 /* XPRoomPositionView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionView.h; sourceTree = "<group>"; };
|
||||
E8AEAEF527141C910017FCE0 /* XPRoomPositionView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPositionView.m; sourceTree = "<group>"; };
|
||||
E8AEAEF427141C910017FCE0 /* XPRoomPositionContainView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPositionContainView.h; sourceTree = "<group>"; };
|
||||
E8AEAEF527141C910017FCE0 /* XPRoomPositionContainView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomPositionContainView.m; sourceTree = "<group>"; };
|
||||
E8AEAEF727141CA30017FCE0 /* XPRoomInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomInfoView.h; sourceTree = "<group>"; };
|
||||
E8AEAEF827141CA30017FCE0 /* XPRoomInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomInfoView.m; sourceTree = "<group>"; };
|
||||
E8B825B526E9A7D8009E8E9F /* BaseObject.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = BaseObject.h; sourceTree = "<group>"; };
|
||||
@@ -1279,6 +1296,49 @@
|
||||
path = StatisticsService;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E8680707271959090024F48F /* SubViews */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E86807152719678B0024F48F /* View */,
|
||||
E868070C27195D4C0024F48F /* Object */,
|
||||
E868070B27195AA30024F48F /* Config */,
|
||||
E8680708271959DB0024F48F /* XPRoomPositionView.h */,
|
||||
E8680709271959DB0024F48F /* XPRoomPositionView.m */,
|
||||
);
|
||||
path = SubViews;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E868070B27195AA30024F48F /* Config */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
);
|
||||
path = Config;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E868070C27195D4C0024F48F /* Object */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E868070D27195DD30024F48F /* XPRoomPositionLayoutImpl.h */,
|
||||
E868070E27195DD30024F48F /* XPRoomPositionLayoutImpl.m */,
|
||||
E868071027195DF00024F48F /* XPRoomPositionLayoutProtocol.h */,
|
||||
E868071127195E1A0024F48F /* XPRoomPositionDataSourceImpl.h */,
|
||||
E868071227195E1A0024F48F /* XPRoomPositionDataSourceImpl.m */,
|
||||
E868071427195E340024F48F /* XPRoomPositionDataSourceProtocol.h */,
|
||||
);
|
||||
path = Object;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E86807152719678B0024F48F /* View */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8680716271967B00024F48F /* XPRoomPostionBaseItemView.h */,
|
||||
E8680717271967B00024F48F /* XPRoomPostionBaseItemView.m */,
|
||||
E8680719271969A50024F48F /* XCRoomPostionNickView.h */,
|
||||
E868071A271969A50024F48F /* XCRoomPostionNickView.m */,
|
||||
);
|
||||
path = View;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E872308A26E89D5100B90D4F /* CustomView */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -1526,8 +1586,9 @@
|
||||
E8AEAEEA27141ACC0017FCE0 /* PositionView */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
E8AEAEF427141C910017FCE0 /* XPRoomPositionView.h */,
|
||||
E8AEAEF527141C910017FCE0 /* XPRoomPositionView.m */,
|
||||
E8680707271959090024F48F /* SubViews */,
|
||||
E8AEAEF427141C910017FCE0 /* XPRoomPositionContainView.h */,
|
||||
E8AEAEF527141C910017FCE0 /* XPRoomPositionContainView.m */,
|
||||
);
|
||||
path = PositionView;
|
||||
sourceTree = "<group>";
|
||||
@@ -1974,6 +2035,7 @@
|
||||
E8E70D9226F2F60C00F03460 /* XPMineItemModel.m in Sources */,
|
||||
189DD74A26E21D8400AB55B1 /* SSKeychain.m in Sources */,
|
||||
E8B846CF26FDD96100A777FE /* XPMineRechageHeadView.m in Sources */,
|
||||
E868070F27195DD30024F48F /* XPRoomPositionLayoutImpl.m in Sources */,
|
||||
186A534926FC6ED900D67B2C /* TTAlertMessageAttributedConfig.m in Sources */,
|
||||
E81C27AE26EF39AB0031E639 /* AppDelegate+ThirdConfig.m in Sources */,
|
||||
E8E70D8326F2F51A00F03460 /* XPMineHeadView.m in Sources */,
|
||||
@@ -2021,6 +2083,7 @@
|
||||
E8EEB91426FC7786007C6EBA /* XPMineUserInfoNickViewController.m in Sources */,
|
||||
18E7B31B26F0982E0064BC9B /* UserExpand.m in Sources */,
|
||||
E824543526F57D6E00BE8163 /* XPLoginVerifBindPhoneViewController.m in Sources */,
|
||||
E8680718271967B00024F48F /* XPRoomPostionBaseItemView.m in Sources */,
|
||||
E8AEAEE4271418DA0017FCE0 /* XPRoomBaseManager.m in Sources */,
|
||||
E8B825CD26EA18C8009E8E9F /* ThemeColor.m in Sources */,
|
||||
E8AC720D26F435F5007D6E91 /* UIImageView+LoadImage.m in Sources */,
|
||||
@@ -2058,10 +2121,12 @@
|
||||
E89DA67527009ACD008483C1 /* XPMineRechargeNavView.m in Sources */,
|
||||
186A536926FC6F2E00D67B2C /* XCShareView.m in Sources */,
|
||||
186A534C26FC6ED900D67B2C /* TTAlertView.m in Sources */,
|
||||
E868070A271959DB0024F48F /* XPRoomPositionView.m in Sources */,
|
||||
E8B825BF26E9E57D009E8E9F /* LoginTicketInfo.m in Sources */,
|
||||
187EEEF026E89FE8002833B2 /* AccountInfoStorage.m in Sources */,
|
||||
186A536B26FC6F2E00D67B2C /* XCShareItemCell.m in Sources */,
|
||||
E8B846C526FDB41A00A777FE /* XPMineUserInfolbumPresenter.m in Sources */,
|
||||
E868071327195E1A0024F48F /* XPRoomPositionDataSourceImpl.m in Sources */,
|
||||
E872309326E8D31500B90D4F /* LoginVerifCodeView.m in Sources */,
|
||||
186A534626FC6ED900D67B2C /* TTPopup.m in Sources */,
|
||||
E81C278C26EAFAF60031E639 /* Base64.m in Sources */,
|
||||
@@ -2086,12 +2151,13 @@
|
||||
E80487652717DDD9008595F2 /* XPRoomMenuItem.m in Sources */,
|
||||
189DD75026E21D9000AB55B1 /* GCDHelper.m in Sources */,
|
||||
186A534826FC6ED900D67B2C /* TTAlertButtonConfig.m in Sources */,
|
||||
E8AEAEF627141C910017FCE0 /* XPRoomPositionView.m in Sources */,
|
||||
E8AEAEF627141C910017FCE0 /* XPRoomPositionContainView.m in Sources */,
|
||||
E872308926E89BE000B90D4F /* LoginPhoneViewController.m in Sources */,
|
||||
18E7B29026EA0E6B0064BC9B /* FlutterBoost+Xplan.m in Sources */,
|
||||
E8B846DC26FDE24300A777FE /* RechargeListModel.m in Sources */,
|
||||
189DD75926E6003C00AB55B1 /* Api.m in Sources */,
|
||||
E88B5CB826FB325200DA9178 /* XPMineTeenagerPwdPresenter.m in Sources */,
|
||||
E868071B271969A50024F48F /* XCRoomPostionNickView.m in Sources */,
|
||||
E89DA66727006443008483C1 /* RechargeStorage.m in Sources */,
|
||||
189DD53F26DE255600AB55B1 /* main.m in Sources */,
|
||||
E8AE427627153B7E00BEEBB2 /* XPRoomPositionManager.m in Sources */,
|
||||
|
6
xplan-ios/Assets.xcassets/Room/Position/Contents.json
Normal file
6
xplan-ios/Assets.xcassets/Room/Position/Contents.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
22
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/Contents.json
vendored
Normal file
22
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_lock@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_lock@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/room_position_lock@2x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/room_position_lock@2x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.1 KiB |
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/room_position_lock@3x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_lock.imageset/room_position_lock@3x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
22
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/Contents.json
vendored
Normal file
22
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_mute@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_mute@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/room_position_mute@2x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/room_position_mute@2x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 597 B |
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/room_position_mute@3x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_mute.imageset/room_position_mute@3x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
22
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/Contents.json
vendored
Normal file
22
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_normal@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "room_position_normal@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/room_position_normal@2x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/room_position_normal@2x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.7 KiB |
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/room_position_normal@3x.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Position/room_position_normal.imageset/room_position_normal@3x.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
@@ -10,7 +10,7 @@
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPositionManager : XPRoomBaseManager
|
||||
|
||||
- (CGFloat)getContainerViewHeight;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
@@ -6,11 +6,11 @@
|
||||
//
|
||||
|
||||
#import "XPRoomPositionManager.h"
|
||||
#import "XPRoomPositionView.h"
|
||||
#import "XPRoomPositionContainView.h"
|
||||
|
||||
@interface XPRoomPositionManager ()
|
||||
///坑位
|
||||
@property (nonatomic,strong) XPRoomPositionView *positionView;
|
||||
@property (nonatomic,strong) XPRoomPositionContainView *positionView;
|
||||
@end
|
||||
|
||||
@implementation XPRoomPositionManager
|
||||
@@ -19,10 +19,15 @@
|
||||
return self.positionView;
|
||||
}
|
||||
|
||||
- (XPRoomPositionView *)positionView {
|
||||
- (XPRoomPositionContainView *)positionView {
|
||||
if (!_positionView) {
|
||||
_positionView = [[XPRoomPositionView alloc] init];
|
||||
_positionView = [[XPRoomPositionContainView alloc] init];
|
||||
}
|
||||
return _positionView;
|
||||
}
|
||||
|
||||
- (CGFloat)getContainerViewHeight {
|
||||
return [self.positionView positionContainerViewHeight];
|
||||
}
|
||||
|
||||
@end
|
||||
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomPositionDataSourceImpl.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPositionDataSourceImpl : NSObject
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,12 @@
|
||||
//
|
||||
// XPRoomPositionDataSourceImpl.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XPRoomPositionDataSourceImpl.h"
|
||||
|
||||
@implementation XPRoomPositionDataSourceImpl
|
||||
|
||||
@end
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XPRoomPositionDataSourceProtocol.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@protocol XPRoomPositionDataSourceProtocol <NSObject>
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomPositionLayoutImpl.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
///P
|
||||
#import "XPRoomPositionLayoutProtocol.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPositionLayoutImpl : NSObject<XPRoomPositionLayoutProtocol>
|
||||
|
||||
- (CGFloat)getPositionViewHeight;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,131 @@
|
||||
//
|
||||
// XPRoomPositionLayoutImpl.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XPRoomPositionLayoutImpl.h"
|
||||
///Tool
|
||||
#import "XPMacro.h"
|
||||
///View
|
||||
#import "XCRoomPostionNickView.h"
|
||||
|
||||
|
||||
@implementation XPRoomPositionLayoutImpl
|
||||
|
||||
///多少个item
|
||||
- (int)numberOfItems {
|
||||
return 9;
|
||||
}
|
||||
|
||||
///item的class 所有的坑位的样式是相同的 如果不同的话 在做
|
||||
- (Class)classOfPositionItme {
|
||||
return [XCRoomPostionNickView class];
|
||||
}
|
||||
|
||||
|
||||
///获取所有item中心点
|
||||
- (NSArray<NSValue *> *)getPositionItemsCenter {
|
||||
int number = [self numberOfItems];
|
||||
CGSize itemSize = [self getNormalItemSize];
|
||||
CGSize ownerSize = [self getOwnerItemSize];
|
||||
CGFloat lineSpace = [self getItemsLineSpace];
|
||||
CGFloat interiteSpace = [self getItemsInteritemSpace];
|
||||
CGFloat ownerItemMaxY = ownerSize.height + [self getOwnerItemToNormalItemHeight];
|
||||
|
||||
CGPoint ownerCenter = CGPointMake(KScreenWidth / 2, ownerSize.height / 2);
|
||||
NSMutableArray* itemArray = [NSMutableArray arrayWithCapacity:number];
|
||||
NSValue * ownerCenterValue = [NSValue valueWithCGPoint:ownerCenter];
|
||||
[itemArray addObject:ownerCenterValue];
|
||||
|
||||
for (int i = 1; i < number; i++) {
|
||||
CGPoint itemCenter = CGPointZero;
|
||||
if (i <= 4) {
|
||||
itemCenter = CGPointMake(itemSize.width / 2 + (itemSize.width + interiteSpace) * (i -1), ownerItemMaxY + itemSize.height/ 2);
|
||||
} else {
|
||||
itemCenter = CGPointMake(itemSize.width / 2 + (itemSize.width + interiteSpace) * (i -1), ownerItemMaxY + itemSize.height/ 2 + itemSize.height + lineSpace);
|
||||
}
|
||||
NSValue * itemCenterValue = [NSValue valueWithCGPoint:itemCenter];
|
||||
[itemArray addObject:itemCenterValue];
|
||||
}
|
||||
return itemArray;
|
||||
}
|
||||
|
||||
///获取所有item的布局
|
||||
- (NSArray<NSValue *> *)getPositionItemsRect {
|
||||
int number = [self numberOfItems];
|
||||
CGSize itemSize = [self getNormalItemSize];
|
||||
CGSize ownerSize = [self getOwnerItemSize];
|
||||
CGFloat lineSpace = [self getItemsLineSpace];
|
||||
CGFloat interiteSpace = [self getItemsInteritemSpace];
|
||||
CGFloat ownerItemMaxY = [self getOwnerItemSize].height + [self getOwnerItemToNormalItemHeight];
|
||||
NSMutableArray* itemArray = [NSMutableArray arrayWithCapacity:number];
|
||||
CGRect ownerRect = CGRectMake((KScreenWidth - 40)/2 - ownerSize.width / 2, 0, ownerSize.width, ownerSize.height);
|
||||
NSValue * ownerFrameValue = [NSValue valueWithCGRect:ownerRect];
|
||||
[itemArray addObject:ownerFrameValue];
|
||||
for (int i = 1; i < number; i++) {
|
||||
CGPoint itemOrigin = CGPointZero;
|
||||
if (i <= 4) {
|
||||
itemOrigin = CGPointMake((itemSize.width + interiteSpace) * (i -1), ownerItemMaxY);
|
||||
} else {
|
||||
itemOrigin = CGPointMake((itemSize.width + interiteSpace) * (i-4 -1), ownerItemMaxY + itemSize.height + lineSpace);
|
||||
}
|
||||
CGRect itemRect = CGRectMake(itemOrigin.x, itemOrigin.y, itemSize.width, itemSize.height);
|
||||
NSValue * itemRectValue = [NSValue valueWithCGRect:itemRect];
|
||||
[itemArray addObject:itemRectValue];
|
||||
}
|
||||
return itemArray;
|
||||
}
|
||||
|
||||
#pragma mark - Public Method
|
||||
- (CGFloat)getPositionViewHeight {
|
||||
CGFloat height = 0;
|
||||
CGSize itemSize = [self getNormalItemSize];
|
||||
CGSize ownerSize = [self getOwnerItemSize];
|
||||
CGFloat lineSpace = [self getItemsLineSpace];
|
||||
int numberLine =([self numberOfItems] -1)/ [self numberOfItemInLine];
|
||||
height = ownerSize.height +(itemSize.height + lineSpace) * numberLine + [self getOwnerItemToNormalItemHeight];
|
||||
return height;
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
///获取房主坑位的大小
|
||||
- (CGSize)getOwnerItemSize {
|
||||
return CGSizeMake(58 + 5, 58 + 12 + 6 + 5);
|
||||
}
|
||||
///获取普通坑位的大小
|
||||
- (CGSize)getNormalItemSize {
|
||||
CGFloat itemWidth = 55 + 5;
|
||||
return CGSizeMake(itemWidth, itemWidth + 12 + 6);
|
||||
}
|
||||
///获取行之间的间隙
|
||||
- (CGFloat)getItemsLineSpace {
|
||||
return 15;
|
||||
}
|
||||
|
||||
///获取列之间的间隙
|
||||
- (CGFloat)getItemsInteritemSpace {
|
||||
int number= [self numberOfItemInLine];
|
||||
CGFloat itemWidth = (KScreenWidth - 40 - [self getNormalItemSize].width * number) / (number - 1);
|
||||
return itemWidth;
|
||||
|
||||
}
|
||||
|
||||
///获取容器外部的间隙
|
||||
- (UIEdgeInsets)getContainerEsgeInsets {
|
||||
return UIEdgeInsetsMake(0, 20, 0, 20);
|
||||
}
|
||||
|
||||
///房主item和普通item之间的距离
|
||||
- (CGFloat)getOwnerItemToNormalItemHeight {
|
||||
return 33;
|
||||
}
|
||||
|
||||
|
||||
///一列有几个item 房主不算
|
||||
- (int)numberOfItemInLine {
|
||||
return 4;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,27 @@
|
||||
//
|
||||
// XPRoomPositionLayoutProtocol.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@protocol XPRoomPositionLayoutProtocol <NSObject>
|
||||
///多少个item
|
||||
- (int)numberOfItems;
|
||||
///一列有几个item
|
||||
- (int)numberOfItemInLine;
|
||||
///item的class 所有的坑位的样式是相同的 如果不同的话 在做
|
||||
- (Class)classOfPositionItme;
|
||||
///获取所有item的布局
|
||||
- (NSArray<NSValue *> *)getPositionItemsCenter;
|
||||
///获取所有item的布局
|
||||
- (NSArray<NSValue *> *)getPositionItemsRect;
|
||||
///获取容器外部的间隙
|
||||
- (UIEdgeInsets)getContainerEsgeInsets;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// XCRoomPostionNickView.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XPRoomPostionBaseItemView.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XCRoomPostionNickView : XPRoomPostionBaseItemView
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,46 @@
|
||||
//
|
||||
// XCRoomPostionNickView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XCRoomPostionNickView.h"
|
||||
///Third
|
||||
#import <Masonry/Masonry.h>
|
||||
///Tool
|
||||
#import "ThemeColor.h"
|
||||
|
||||
@interface XCRoomPostionNickView ()
|
||||
///
|
||||
@property (nonatomic,strong) UILabel *nickLabel;
|
||||
@end
|
||||
|
||||
@implementation XCRoomPostionNickView
|
||||
|
||||
- (void)initSubViews {
|
||||
[super initSubViews];
|
||||
[self addSubview:self.nickLabel];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[super initSubViewConstraints];
|
||||
[self.nickLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.right.mas_equalTo(self);
|
||||
make.top.mas_equalTo(self.avatarImageView.mas_bottom).offset(7);
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - Getters And Setters
|
||||
- (UILabel *)nickLabel {
|
||||
if (!_nickLabel) {
|
||||
_nickLabel = [[UILabel alloc] init];
|
||||
_nickLabel.font = [UIFont systemFontOfSize:11];
|
||||
_nickLabel.textColor = [ThemeColor mainTextColor];
|
||||
_nickLabel.text = @"迷你号";
|
||||
_nickLabel.textAlignment = NSTextAlignmentCenter;
|
||||
}
|
||||
return _nickLabel;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// XPRoomPostionBaseItemView.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPostionBaseItemView : UIView
|
||||
///头像
|
||||
@property (nonatomic,strong, readonly) UIImageView *avatarImageView;
|
||||
- (void)initSubViews;
|
||||
- (void)initSubViewConstraints;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,51 @@
|
||||
//
|
||||
// XPRoomPostionBaseItemView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XPRoomPostionBaseItemView.h"
|
||||
///Third
|
||||
#import <Masonry/Masonry.h>
|
||||
|
||||
@interface XPRoomPostionBaseItemView ()
|
||||
///头像
|
||||
@property (nonatomic,strong) UIImageView *avatarImageView;
|
||||
@end
|
||||
|
||||
@implementation XPRoomPostionBaseItemView
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame {
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
[self initSubViews];
|
||||
[self initSubViewConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
[self addSubview:self.avatarImageView];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[self.avatarImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.right.top.mas_equalTo(self);
|
||||
make.height.mas_equalTo(self.mas_width);
|
||||
}];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Getters And Setters
|
||||
- (UIImageView *)avatarImageView {
|
||||
if (!_avatarImageView) {
|
||||
_avatarImageView = [[UIImageView alloc] init];
|
||||
_avatarImageView.userInteractionEnabled = YES;
|
||||
_avatarImageView.image = [UIImage imageNamed:@"room_position_normal"];
|
||||
}
|
||||
return _avatarImageView;
|
||||
}
|
||||
|
||||
@end
|
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// XPRoomPositionView.h
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "XPRoomPositionLayoutProtocol.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPositionView : UIView
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame layout:(id<XPRoomPositionLayoutProtocol>)layout;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,43 @@
|
||||
//
|
||||
// XPRoomPositionView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/15.
|
||||
//
|
||||
|
||||
#import "XPRoomPositionView.h"
|
||||
|
||||
@interface XPRoomPositionView ()
|
||||
///UI相关的
|
||||
@property (nonatomic,strong) id<XPRoomPositionLayoutProtocol> layout;
|
||||
|
||||
@end
|
||||
|
||||
@implementation XPRoomPositionView
|
||||
|
||||
- (instancetype)initWithFrame:(CGRect)frame layout:(id<XPRoomPositionLayoutProtocol>)layout {
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
self.layout = layout;
|
||||
[self initSubViews];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
int number = [self.layout numberOfItems];
|
||||
NSArray * array = [self.layout getPositionItemsRect];
|
||||
for (int i = 0; i < number; i++) {
|
||||
UIView * view = [self getItemView];
|
||||
NSValue * rect = [array objectAtIndex:i];
|
||||
view.frame = rect.CGRectValue;
|
||||
[self addSubview:view];
|
||||
}
|
||||
}
|
||||
#pragma mark - XPRoomPositionLayoutProtocol
|
||||
- (UIView *)getItemView {
|
||||
Class class = [self.layout classOfPositionItme];
|
||||
return [[class alloc] init];;
|
||||
}
|
||||
@end
|
@@ -9,8 +9,8 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPRoomPositionView : UIView
|
||||
|
||||
@interface XPRoomPositionContainView : UIView
|
||||
- (CGFloat)positionContainerViewHeight;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,64 @@
|
||||
//
|
||||
// XPRoomPositionView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/11.
|
||||
//
|
||||
|
||||
#import "XPRoomPositionContainView.h"
|
||||
///Third
|
||||
#import <Masonry/Masonry.h>
|
||||
///Tool
|
||||
#import "XPRoomPositionLayoutImpl.h"
|
||||
///View
|
||||
#import "XPRoomPositionView.h"
|
||||
|
||||
@interface XPRoomPositionContainView ()
|
||||
///
|
||||
@property (nonatomic,strong) XPRoomPositionView *postionView;
|
||||
///
|
||||
@property (nonatomic,strong) XPRoomPositionLayoutImpl *layoutImpl;
|
||||
@end
|
||||
|
||||
@implementation XPRoomPositionContainView
|
||||
- (instancetype)initWithFrame:(CGRect)frame {
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
[self initSubViews];
|
||||
[self initSubViewConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
#pragma mark - Public Method
|
||||
- (CGFloat)positionContainerViewHeight {
|
||||
return [self.layoutImpl getPositionViewHeight];
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
[self addSubview:self.postionView];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
[self.postionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.right.mas_equalTo(self).inset(20);
|
||||
make.top.bottom.mas_equalTo(self);
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - Getters And Setters
|
||||
- (XPRoomPositionView *)postionView {
|
||||
if (!_postionView) {
|
||||
_postionView = [[XPRoomPositionView alloc] initWithFrame:CGRectZero layout:self.layoutImpl];
|
||||
}
|
||||
return _postionView;
|
||||
}
|
||||
|
||||
- (XPRoomPositionLayoutImpl *)layoutImpl {
|
||||
if (!_layoutImpl) {
|
||||
_layoutImpl = [[XPRoomPositionLayoutImpl alloc] init];
|
||||
}
|
||||
return _layoutImpl;
|
||||
}
|
||||
|
||||
@end
|
@@ -1,31 +0,0 @@
|
||||
//
|
||||
// XPRoomPositionView.m
|
||||
// xplan-ios
|
||||
//
|
||||
// Created by 冯硕 on 2021/10/11.
|
||||
//
|
||||
|
||||
#import "XPRoomPositionView.h"
|
||||
|
||||
@implementation XPRoomPositionView
|
||||
- (instancetype)initWithFrame:(CGRect)frame
|
||||
{
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
[self initSubViews];
|
||||
[self initSubViewConstraints];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
#pragma mark - Private Method
|
||||
- (void)initSubViews {
|
||||
self.backgroundColor = [UIColor greenColor];
|
||||
}
|
||||
|
||||
- (void)initSubViewConstraints {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@end
|
@@ -68,7 +68,7 @@
|
||||
[self.positionManager.containerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.right.mas_equalTo(self.view);
|
||||
make.top.mas_equalTo(self.infoManager.containerView.mas_bottom);
|
||||
make.height.mas_equalTo(@280);
|
||||
make.height.mas_equalTo([self.positionManager getContainerViewHeight]);
|
||||
}];
|
||||
|
||||
[self.messageManager.containerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
|
Reference in New Issue
Block a user