Paint.setStrokeWidth() hangi ölçü birimini kullanır ve bu değeri geçerli ekran yoğunluğuna göre ölçeklendirmem gerekir?Paint.setStrokeWidth() hangi ölçü birimini kullanır?
Float değeri bu yüzden bir dizi piksel olmadığını biliyorum. Bir şeye göreli olmalı.
budur tüm belgeler bu yazı olarak diyor ki:
okşayarak genişliğini ayarlayın. 0 çizgisi modunda felç geçirin. Saç çizgileri, her zaman canva matrisinden bağımsız tek bir piksel çizer.
Merhaba Romain, ben ApiDemos gelen PathEffect örnek denedim ve çizgi genişliği orada 6'ya ayarlanır. Hdpi cep telefonu ekranımdaki genişliğini ölçtüğümde 9px. İlk vuruş genişliği değerinin yoğunluk tarafından çarpıldığına benziyor. Gerçek genişliği elde etmek için yoğunluğa göre bölünmüş değer sağlamalı mıyım? – Zzokk
Roma’nın cevabının doğru olduğuna inanmıyorum. Benim mevcut test cihazımda (HTC One X, 2.0 yoğunluğu ile) .setStrokeWidth() 'nin, istenen vuruş genişliğinin 1,5'e bölünmesiyle çağrılması gerektiğini buldum. Daha sonra, genişlik olması gerektiği gibi. Aksi halde çok geniş. 1,5 faktör Zzokk'un (6px vs 9px) bulduğu ile tam olarak aynı fikirde, eğer yoğunluğa bağlıysa, One X 2.0, 1.5 değil. Yani bu 1.5 faktörün kaynağı şu an beni şaşırtmaktır. – Trevor
Lanet olsun! Bu şüpheyi çözmek için buraya geldim. @Romain Guy'ın yanıtını gördüm ve "Kesinlikle cevabımız var" diye düşündüm, ancak yorumlarda bu kadar kolay görünmüyordu. Her neyse, sadece piksellerin dp'den piksellere dönüştürülmesi gibi ... ve farklı ekran boyutları için çalışıyormuş gibi davranmayı denedim ... – Sotti