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.
169 lines
5.5 KiB
169 lines
5.5 KiB
4 years ago
|
/*
|
||
|
* 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
|