【问题标题】:How to use Layout Inflater with CardUI如何在 CardUI 中使用 Layout Inflater
【发布时间】:2013-07-18 10:36:12
【问题描述】:

我正在使用 here 找到的 CardUI。

我想用我自己的布局 xml 为这些卡片充气,但我不明白如何做。

这是 MainActivity 创建卡片的代码

MyCard facebookCard = new MyCard("Continue with Facebook");
MyCard noSignInCard = new MyCard("Continue without log in");

mCardView.addCard(facebookCard);
mCardView.addCard(noSignInCard);

这是 myCard 的类

package com.kc.umassguide;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;

import com.fima.cardsui.objects.Card;

public class MyCard extends Card {

public MyCard(String title){
    super(title);
}

@Override
public View getCardContent(Context context) {
    View view = LayoutInflater.from(context).inflate(R.layout.card_ex, null);

    ((TextView) view.findViewById(R.id.title)).setText(title);


    return view;
}




}

我相信我应该使用 getCardContent 进行膨胀,但我知道如何使用上下文。

任何帮助将不胜感激。

【问题讨论】:

    标签: android layout-inflater layout-xml


    【解决方案1】:

    您只需将 R.layout.card_ex 替换为您的新布局。这是另一个例子:

    https://github.com/nadavfima/cardsui-for-android/blob/master/CardsExample/src/com/cardsui/example/MyImageCard.java

    【讨论】:

    • 啊,是的,但这会使所有卡片的布局都相同吗?我将如何在卡的基础上改变它。我觉得我可能需要在自己身上实现这种方法,不确定。关于这个库的文档不多,但它的 android 设计非常棒。
    • 您使用public class MyCardType1 extends Card 创建一种卡片类型,您可以创建所有需要更改布局的MyCardType。然后你添加这张卡片:mCardView.addCard(myCardType1); mCardView.addCard(myCardType2);
    • 所以对于我想要的每一个新的卡片层我都应该创建一个新的类,对吗?
    • 谢谢,您的帮助很大。
    • 我使用了相同的卡片 ui,但是如何在点击该特定卡片时获得位置?
    猜你喜欢
    • 1970-01-01
    • 2016-06-13
    • 2014-09-06
    • 1970-01-01
    • 1970-01-01
    • 2019-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多