Rumah > Soal Jawab > teks badan
/*这段代码功能是添加按钮,视图上移,但是发现在上移的视图里,添加的按钮不响应,这是为什么呢?*/
-(void)showView
{
UIView *addView = [[UIView alloc] initWithFrame:CGRectMake(0, SCREENSIZE.height,SCREENSIZE.width, 80)];
[addView setBackgroundColor:[UIColor whiteColor]];
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(10, 10, 80, 40)];
[btn setTitle:@"相册" forState:UIControlStateNormal];
[btn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
[btn addTarget:self action:@selector(openPhoto1) forControlEvents:UIControlEventTouchUpInside];
[addView addSubview:btn];
[self.view addSubview:addView];
//计算控制器的view需要平移的距离
CGFloat moveY=0;
if (_bShowAddView==false)
moveY = -80;
else
moveY=0;
_bShowAddView=!_bShowAddView;
//
// // 4,执行动画
[UIView animateWithDuration:0.5 animations:^{
self.view.transform = CGAffineTransformMakeTranslation(0, moveY);
}];
}
-(void)openPhoto1
{
NSLog(@"test");
}
天蓬老师2017-04-17 18:01:40
Kawalan antara muka melebihi kedudukan kawalan ibu bapa.
Tentukan saiz bingkai self.view, lihat saiz bingkai addview, dan kemudian lihat saiz kedudukan bingkai btn, dan pastikan setiap lapisan berada dalam bingkai self.view~
ringa_lee2017-04-17 18:01:40
Ya, addview berada di luar skop dan objek yang digunakan untuk animasi adalah salah. terima kasih.
高洛峰2017-04-17 18:01:40
Saya tidak faham apa yang anda mahu tulis, tetapi Y dan ketinggian frme dalam UIView *addView = [[UIView alloc] initWithFrame:CGRectMake(0, SCREENSIZE.height,SCREENSIZE.width, 80)]; tetapkan salah, ubah sahaja dan klik
PHPz2017-04-17 18:01:40
UIView是需要添加交互效果的,默认是不能接到点击效果
, tetapkan atribut yang menerima kesan klik kepada YA dan anda sudah selesai
天蓬老师2017-04-17 18:01:40
Sama ada di luar skop kawalan ibu bapa atau interaksi kawalan ibu bapa tidak dibenarkan
迷茫2017-04-17 18:01:40
Jika anda perlu berinteraksi, ada caranya
Sesuaikan pandangan ibu bapa yang tidak teratur (saya rasa anda tidak tahu cara bertanya soalan ini)
Takrifkan semula kedudukan relatif kepada paparan induk dalam peristiwa sentuhan paparan