Почему RPBroadcastPickerView отображает пустой белый экран?
Ive создал собственный модуль iOS для приложения, поддерживающего реакцию (v0.61.5). все, что он делает, это возвращает родной RPBroadcastPickerView. я ожидаю, что будет отображаться окно выбора, но в моем тесте отображается только пустой белый экран.
вот как выглядит собственный модуль:
#import <ReplayKit/ReplayKit.h>
#import <React/RCTViewManager.h>
@interface BroadcastPickerManager : RCTViewManager
@end
@implementation BroadcastPickerManager
RCT_EXPORT_MODULE(BroadcastPicker)
- (UIView *)view
{
return [[RPSystemBroadcastPickerView alloc] init];
}
@end
вот как это выглядит в RN
BroadcastPickerView.js:
import { requireNativeComponent, View } from 'react-native'
module.exports = requireNativeComponent('BroadcastPicker')
TestScreen.js:
class TestScreen extends React.Component {
constructor(props) {
super(props)
}
render() {
return (
<BroadcastPickerView style={{ flex: 1 }} />
)
}
}
Не уверен, что я просто что-то упустил, но при переходе на этот экран ничего не отображается. какие-либо предложения?
1 ответ
Вам необходимо указать размер кадра для RPSystemBroadcastPickerView:
- (UIView *)view
{
UIView* pickerView = [[RPSystemBroadcastPickerView alloc] init];
pickerView.frame = CGRectMake(0, 0, 50, 50);
return pickerView;
}
или же
- (UIView *)view
{
return [[RPSystemBroadcastPickerView alloc] initWithFrame: CGRectMake(0, 0, 50, 50)];
}
Вы можете найти пример Swift в документации :
let broadcastPicker = RPSystemBroadcastPickerView(frame: CGRect(x: 0, y: 0, width: 50, height: 50))