2012-01-30 9 views
6

मेरे पास एक UITableViewController है और मैं सादा पाठ की तरह दिखने के लिए सेक्शन हेडर को कस्टमाइज़ करने की कोशिश कर रहा हूं। मैं लग रहा है कि जब मैं कस्टम headerView (नीचे विवरण) के लिए एक subview जोड़ने के लिए, यह योग्यता हैडर नेविगेशन टूट जाता है।कस्टम व्यू में सबव्यूव जोड़नाफॉरहेडर इनसेक्शन ब्रेक वॉयसओवर नेविगेशन

उदाहरण के लिए: कहें कि मेरे पास तीन शीर्षलेखों वाला एक टेबल है: हेडर 1, हेडर 2, हेडर 3।

दृश्य के कस्टम कार्यान्वयन के बिनाForHeaderInSection विधि मैं वॉयसओवर रोटर को हेडिंग द्वारा नेविगेट करने के लिए स्विच कर सकता हूं और सबकुछ इरादे से काम करता है।

जब मैं निम्नलिखित तरीके से viewForHeaderInSection विधि को कार्यान्वित करता हूं, तो मैं हेडर 1 से हेडर 2 तक हेडर 3 तक और हेडर 2 तक वापस जा सकता हूं, लेकिन फिर वॉयसओवर सभी शीर्षकों को खो देता है (कह रहा है "कोई हेडर नहीं मिला")।

मैं इस समस्या पाया है कि जब मैं headerView करने के लिए एक subview के रूप headerLabel जोड़ने शुरू होता है। मैं इतना वॉयसओवर यह लेने नहीं होगा एक छिपा पहुंच तत्व को headerLabel स्थापित करने की कोशिश की है, लेकिन समस्या बनी रहती है।

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
{ 

UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0,0,tableView.frame.size.width,30)]; 

UILabel *headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 0, headerView.frame.size.width-120.0, headerView.frame.size.height)]; 

headerLabel.textAlignment = UITextAlignmentLeft; 
headerLabel.font = [UIFont boldSystemFontOfSize:22]; 
headerLabel.text = [headersArray objectAtIndex:section]; 
headerLabel.backgroundColor = [UIColor clearColor]; 

[headerView addSubview:headerLabel]; 

return headerView; 

} 

कोई विचार है कि वॉयसओवर इस तरह प्रतिक्रिया कर रहा है, इसकी सराहना की जाएगी।

धन्यवाद।

+0

मुझे एक ही समस्या का सामना करना पड़ रहा है, अगर किसी व्यक्ति को उस विषय पर अपडेट किया गया तो यह बहुत अच्छा होगा – romrom

+0

मुझे उन अनुभागों की सूची में जोड़ें जो कस्टम सेक्शन हेडर का उपयोग करते समय अभिगम्यता में सुधार करना चाहते हैं। –

उत्तर

0

इस मूल समस्या का जवाब होने की संभावना नहीं है, लेकिन मैं सिर्फ एक समान समस्या को हल काम किया।

मेरे पास सेक्शन हेडर के लिए कस्टम UIView था, और इन्हें एक सरणी में एक पूल रखा, और मौलिक रूप से उनका पुन: उपयोग किया। यह पूरी तरह से VoiceOvery उलझन में है, और आगे या पीछे जा रहा हमेशा पिछले या अगले सेल के रूप में उम्मीद के चयन में परिणित नहीं हो।

हालांकि, जब मैं प्रत्येक बार एक नया UIView बनाने में बदल जाता हूं तालिका दृश्य: viewForHeaderInSection: कॉल किया गया था, वॉइसओवर का यह नेविगेशन भ्रम बंद हो गया, और सभी ने अच्छी तरह से काम किया। मेरे हैडर बार देखा गया सुलभ (isAccessibleElement) कर रहे हैं और एक लेबल सेट है।

संबंधित मुद्दे