You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
168 lines
5.5 KiB
168 lines
5.5 KiB
/* |
|
* Licensed to the Apache Software Foundation (ASF) under one |
|
* or more contributor license agreements. See the NOTICE file |
|
* distributed with this work for additional information |
|
* regarding copyright ownership. The ASF licenses this file |
|
* to you under the Apache License, Version 2.0 (the |
|
* "License"); you may not use this file except in compliance |
|
* with the License. You may obtain a copy of the License at |
|
* |
|
* http://www.apache.org/licenses/LICENSE-2.0 |
|
* |
|
* Unless required by applicable law or agreed to in writing, |
|
* software distributed under the License is distributed on an |
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
|
* KIND, either express or implied. See the License for the |
|
* specific language governing permissions and limitations |
|
* under the License. |
|
*/ |
|
|
|
#import "WXModuleProtocol.h" |
|
|
|
/** |
|
* This enum is used to define the position of navbar item. |
|
*/ |
|
typedef NS_ENUM(NSInteger, WXNavigationItemPosition) { |
|
WXNavigationItemPositionCenter = 0x00, |
|
WXNavigationItemPositionRight, |
|
WXNavigationItemPositionLeft, |
|
WXNavigationItemPositionMore |
|
}; |
|
|
|
/** |
|
* @abstract The callback after executing navigator operations. The code has some status such as 'WX_SUCCESS'、'WX_FAILED' etc. The responseData |
|
* contains some useful info you can handle. |
|
*/ |
|
typedef void (^WXNavigationResultBlock)(NSString *code, NSDictionary * responseData); |
|
|
|
@protocol WXNavigationProtocol <WXModuleProtocol> |
|
|
|
/** |
|
* @abstract Returns the navigation controller. |
|
* |
|
* @param container The target controller. |
|
*/ |
|
- (id)navigationControllerOfContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Sets the navigation bar hidden. |
|
* |
|
* @param hidden If YES, the navigation bar is hidden. |
|
* |
|
* @param animated Specify YES to animate the transition or NO if you do not want the transition to be animated. |
|
* |
|
* @param container The navigation controller. |
|
* |
|
*/ |
|
- (void)setNavigationBarHidden:(BOOL)hidden animated:(BOOL)animated |
|
withContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Sets the background color of navigation bar. |
|
* |
|
* @param backgroundColor The background color of navigation bar. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)setNavigationBackgroundColor:(UIColor *)backgroundColor |
|
withContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Sets the item in navigation bar. |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param position The value indicates the position of item. |
|
* |
|
* @param block A block called once the action is completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)setNavigationItemWithParam:(NSDictionary *)param |
|
position:(WXNavigationItemPosition)position |
|
completion:(WXNavigationResultBlock)block |
|
withContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Clears the item in navigation bar. |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param position The value indicates the position of item. |
|
* |
|
* @param block A block called once the action is completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)clearNavigationItemWithParam:(NSDictionary *)param |
|
position:(WXNavigationItemPosition)position |
|
completion:(WXNavigationResultBlock)block |
|
withContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Pushes a view controller onto the receiver’s stack. |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param block A block called once the action is completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)pushViewControllerWithParam:(NSDictionary *)param |
|
completion:(WXNavigationResultBlock)block |
|
withContainer:(UIViewController *)container; |
|
|
|
/** |
|
* @abstract Pops the top view controller from the navigation stack. |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param block A block called once the action is completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)popViewControllerWithParam:(NSDictionary *)param |
|
completion:(WXNavigationResultBlock)block |
|
withContainer:(UIViewController *)container; |
|
|
|
|
|
@optional |
|
|
|
/** |
|
* @abstract open the resource at the specified URL which supports many common schemes, including the http, https, tel and mailto schemes. |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param success A block called once the action is completed successfully. |
|
* |
|
* @param failure A block called once the action failed to be completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)open:(NSDictionary *)param success:(WXModuleCallback)success |
|
failure:(WXModuleCallback)failure |
|
withContainer:(UIViewController *)container; |
|
|
|
|
|
/** |
|
* @abstract close the current weex page |
|
* |
|
* @param param The data which is passed to the implementation of the protocol. |
|
* |
|
* @param success A block called once the action is completed successfully. |
|
* |
|
* @param failure A block called once the action failed to be completed. |
|
* |
|
* @param container The target controller. |
|
* |
|
*/ |
|
- (void)close:(NSDictionary *)param success:(WXModuleCallback)success |
|
failure:(WXModuleCallback)failure |
|
withContainer:(UIViewController *)container; |
|
@end
|
|
|