目前正在练习使用android studio制作应用程序。 我有这个自定义字体并保存到res / font目录供以后使用。 在活动中,我试图用字体对象调用getfont(R.font.my_customized_font)。 ex)字体font = getResources()。getfont(R.font.mycustomizedfont)
但是,当我尝试使用具有API级别24的实际设备运行项目时,由于getfont()方法要求min sdk级别为26,因此它不会被激活。
我知道你可以通过android:fontfamily在xml文件中设置文本视图的字体,但我使用的是textwitcher而不是textview。
通过使用26设置min sdk,仿真器工作正常,但我想通过使用实际设备来解决这个问题。
我通过浏览开发者的网站找到了解决方案 我刚刚添加了Typeface font = ResourcesCompat.getfont(context,R.font.mycustomizedfont)
答案 0 :(得分:0)
我使用了21的Min API,这对我有用:
Typeface type = Typeface.createFromAsset(getAssets(),"fonts/mycustomizedfont");
然后,将字体设置为子TextViews:
text_view.setTypeface(type);
希望这有帮助!
答案 1 :(得分:0)
你可以使用via xml layout简单就是这样使用: -
cell.stepper.tag = indexPath.row
cell.stepper.minimumValue = Double((arr?.quantity)!)
cell.stepper.addTarget(self, action: #selector(stepperAction(sender:)), for:.valueChanged)
func stepperAction(sender: UIStepper) {
let buttonPosition = sender.convert(CGPoint(), to: tableDetails)
let index = tableDetails.indexPathForRow(at: buttonPosition)
let obj = cartCountModel?.items[(index?.row)!]
self.itemId = obj?.itemId
let cell : ProductTableViewCell = tableDetails.cellForRow(at: IndexPath(row: 0, section: 0)) as! ProductTableViewCell
var value = String(describing:Float(sender.value))
print(value)
let quant = value.replacingOccurrences(of: ".0", with: "")
// cell.quantityTextField.text = String(describing: quant)
self.quantity = Int(quant)
print(quantity)
let itemsAddingApi = "http:xxx......................"
itemsIncrementingandDecrementingtocartDownloadJsonWithURL(itemsApi: itemsAddingApi)
}
而不是avenir使用res / font文件夹下的字体名称。 希望它会对你有所帮助。
答案 2 :(得分:0)
我通过浏览开发人员的网站找到了解决方案我刚刚添加了Typeface font = ResourcesCompat.getfont(context,R.font.mycustomizedfont)
以编程方式应用字体