2010-09-23 12 views
36

मेरे पास फोटोग्राफिक उद्देश्यों के लिए एक आईफोन ऐप है (एक लाइटबॉक्स का प्रकार)। इस ऐप को जितना संभव हो उतना चमक की जरूरत है। स्क्रीन चमक को प्रोग्रामेटिक रूप से बदलने का कोई तरीका है, और उसके बाद कुछ समय बाद इसे पुनर्स्थापित करें?क्या प्रोग्राम चमक से स्क्रीन चमक समायोजित करने का कोई तरीका है?

उत्तर

71

संपादित करें: आईओएस 5 में अब screen brightness API शामिल है।

[[UIScreen mainScreen] setBrightness:0.5]; 

पिछला जवाब:

नहीं, यह क्षमता सार्वजनिक API के माध्यम से संपर्क में नहीं है।

संपादित करें: ध्यान दें कि भविष्य में संभावित आईओएस रिलीज में एक विशेष iDevice पर मल्टीटास्किंग बार पर स्क्रीन चमक हो सकती है या नहीं।

+0

जबकि मैं भी नहीं कह सकता क्या यह मामला है या मालिकाना सूचना के प्रकटीकरण के संबंध में मेरे पास एक निश्चित समझौते के कारण नहीं है ... यह निश्चित रूप से मामला है कि प्रमुख तृतीय पक्ष "पाठक" ऐप्स में चमक स्लाइडर होते हैं। तो चाहे यह खुलासा हो या नहीं, लोग इसे कर रहे हैं, और यह ऐप स्टोर समीक्षकों के साथ उड़ान भर रहा है। –

+3

वे पाठ की पृष्ठभूमि के रंग समायोजित कर रहे हैं, वास्तविक स्क्रीन चमक नहीं। –

+0

टिप के लिए धन्यवाद! – MatLecu

5

यह संभव है, लेकिन ऐप स्टोर से आपका ऐप अधिकतर अस्वीकार हो जाएगा, क्योंकि यह एक निजी एपीआई का उपयोग करता है। एक फ्लैशलाइट-ऐप अस्वीकार कर दिया गया था क्योंकि यह स्क्रीन चमक समायोजित करता था, इसलिए मैं इसकी अनुशंसा नहीं करता।

आईओएस 4.2 में, आईपैड, मल्टीटास्किंग-पट्टी में एक स्क्रीन चमक-समायोजक होगा

(@coob द्वारा उल्लेख किया) इसलिए आप अपने उपयोगकर्ताओं बता सकते चमक स्थापित करने के लिए क्या आप वहां मौजूद हैं।


तुम कर सकते हो क्या, एक काले रंग की ओवरले-दृश्य बनाते हैं, और यह और अधिक या कम करने के लिए अल्फा है निर्धारित करते हैं, कैसे उज्ज्वल आप स्क्रीन होना चाहता हूँ के अनुसार है। यह वास्तव में स्क्रीन को कम/अधिक उज्ज्वल नहीं बनायेगा, लेकिन यह उपयोगकर्ता को इसका भ्रम देगा।

+0

केवल आईपैड, या आईफोन भी? दुर्भाग्यवश, केवल आईपैड पर – openfrog

+0

। – Emil

+1

नोट: यह उत्तर अब अप्रचलित है; आईओएस 5 के बाद से एक सार्वजनिक एपीआई है। – ToolmakerSteve

4

यहां इस प्रश्न का एक स्विफ्ट उत्तर है।

import UIKit 
extension UIScreen 
{ 
    static func setMainBrightness(brightness: CGFloat) 
    { 
     guard (0...1).contains(brightness) else 
     { 
      print("Attempt to set the screen brightness to an invalid value: \(brightness) should be between 0 and 1 inclusive.") 
      return 
     } 
     self.main.brightness = brightness 
    } 
} 

का उपयोग करके इसे कॉल:

UIScreen.setMainBrightness(0.5) 

या अपने एक्सटेंशन और (जो मैं सिर्फ सीमा वर्णन करने के लिए लिखा था) की अनदेखी सिर्फ फोन:

UIScreen.main.brightness = 0.5 
+0

वर्तमान (3.1) स्विफ्ट: 'UIScreen.main.brightness = 1.0' – bshirley

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