我使用的是Native-Base tapToClose
组件,并且我自己将<Drawer
tapToClose={true}
openDrawerOffset={1 - (300 / Dimensions.get('window').width)} // this has to be 300 wide
initializeOpen={true}
ref={(ref) => { this.drawer = ref; }} // not really using this anymore
content={
<SideBarView navigator={this.navigator} closeDrawer={this.closeDrawer.bind(this)} />
}
onClose={() => this.closeDrawer()} >
<MainViewTitlebar
title={this.props.title}
openDrawer={this.openDrawer.bind(this)}
navigation={this.props.navigation}>
</MainViewTitlebar>
<View style={styles.content}>
{this.renderMainView()}
</View>
</Drawer>
值设置为300宽(请参阅下面的代码)。我的主要问题是<div [ngClass]="{'ng-invalid': input?.invalid, 'ng-valid': input?.valid, 'ng-pristine': input?.pristine}">
<input [name]="control.id" [(ngModel)]="control.value" required #input="ngModel">
</div>
表现为抽屉是默认宽度,只响应屏幕最后15%左右的点击。
这是原生基地的错误吗?是否有解决方法?
我的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static Semaphore semaphore = new Semaphore(5, 5);
static void Main(string[] args)
{
Task.Factory.StartNew(() =>
{
for (int i = 1; i <= 15; ++i)
{
PrintSomething(i);
if (i % 5 == 0)
{
Thread.Sleep(2000);
}
}
});
Console.ReadLine();
}
public static void PrintSomething(int number)
{
semaphore.WaitOne();
Console.WriteLine(number);
semaphore.Release();
}
}
}
答案 0 :(得分:0)
您可以设置与 openDrawerOffset 相同的 panCloseMask 道具来实现此目的。