设置项目的字体

时间:2017-11-16 08:19:39

标签: android fonts

目前正在练习使用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)

3 个答案:

答案 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)

以编程方式应用字体