我让我的应用程序内购买标题(我可以看到它在NSLog
),但显示标题viewDidLoad
之后被称为UILabel
。有没有什么办法可以在viewDidLoad
之前得到标题,这样UILabel会显示标题?的UILabel没有显示在应用程序内购买标题
以下是我的代码。如果您需要我发布更多内容,请告诉我,谢谢!
PurchaseViewController.h
@interface PurchaseViewController : UIViewController
<SKPaymentTransactionObserver, SKProductsRequestDelegate>
@property (strong, nonatomic) SKProduct *product;
@property (strong, nonatomic) NSString *productID;
@property (strong, nonatomic) IBOutlet UILabel *productTitle;
@property (strong, nonatomic) IBOutlet UIButton *buyButton;
@property (strong, nonatomic) IBOutlet UITextView *productDescription;
- (IBAction)buyProduct:(id)sender;
- (void)getProductInfo:(UIViewController *)viewController;
@property (nonatomic) int buttonNumber;
@end
PurchaseViewController.m
#pragma mark - SKProductsRequestDelegate
- (void) productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response {
NSArray *products = response.products;
if (products.count !=0) {
_product = products[0];
//_buyButton.enabled = YES;
_productTitle.text = _product.localizedTitle;
_productDescription.text = _product.localizedDescription;
}
else {
_productTitle.text = @"Product not found";
}
products = response.invalidProductIdentifiers;
for (SKProduct *product in products) {
NSLog(@"Product not found: %@", product);
}
}
- (IBAction)buyProduct:(id)sender {
SKPayment *payment = [SKPayment paymentWithProduct:_product];
[[SKPaymentQueue defaultQueue] addPayment:payment];
}
#pragma mark SKPaymentTransactionObserver
- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions {
for (SKPaymentTransaction *transaction in transactions) {
switch (transaction.transactionState) {
case SKPaymentTransactionStatePurchased:
[self unlockFeature];
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
case SKPaymentTransactionStateFailed:
NSLog(@"Transaction Failed");
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
break;
default:
break;
}
}
}
视图做负载后的标签仅存在。您的描述中不清楚您的问题。 – Wain
视图加载时,'productTitle'和'productDescription'不会加载到IBOutlet中。当视图加载时,我想让'IBOutlet's显示'productTitle'和'productDescription'。但它只是在视图加载后循环方法,所以它留下'IBOutlet'的空白,因为没有找到'productTitle'和'productDescription'。明白我的意思了吗? – Realinstomp