Karena kesalahan mengeluh bahwa nama yang Anda berikan adalah (null)
, kemungkinan besar ini disebabkan oleh panggilan [UIImage imageNamed:nil]
. Atau lebih khusus lagi, meneruskan variabel belum ditetapkan, jadi itu sama dengan nil
. Saat menggunakan stringWithFormat:
akan menghilangkan kesalahan, saya pikir ada kemungkinan bagus itu tidak benar-benar melakukan apa yang Anda inginkan. Jika nama yang Anda berikan adalah sebuah nil
nilai, maka menggunakan stringWithFormat: akan membuatnya mencari gambar yang secara harfiah bernama "(null)", seolah-olah Anda memanggil [UIImage imageNamed:@"(null)"]
.
Sesuatu seperti ini mungkin merupakan pilihan yang lebih baik:
if (name) {
UIImage *image = [UIImage imageNamed:name];
} else {
// Do something else
}
Anda mungkin ingin menyetel breakpoint di Xcode pada baris "Lakukan sesuatu yang lain", untuk membantu Anda mengetahui mengapa kode ini dipanggil dengan nilai nol di tempat pertama.