我已经实现SwipeRefreshLayout了我的应用程序,但它只能容纳一个应该是listview的直接子项.我试图找出如何将空文本视图添加到以下工作XML文件:
<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swipe_container"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/listViewConversation"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:dividerHeight="1dp" />
</android.support.v4.widget.SwipeRefreshLayout>
Run Code Online (Sandbox Code Playgroud)
将其包装在线性/相对布局中会使其失灵,因为当您想要向下滑动列表视图时,列表视图将始终更新.我能想到的一种方法是以编程方式进行此操作,但我想这不是最好的选择.
您可以使用本教程学习如何实现它:滑动以刷新GUIDE
所以基本上它一切正常,但我想添加一个空视图,当listview为空时显示一条消息.
我正在尝试实现新的RefreshLayout小部件,但似乎我的eclipse无法识别我需要设置的导入.我使用本指南开始:滑动以刷新GUIDE
这就是一切开始的地方:Android开发 - 刷卡刷新
我的第一个猜测是我需要以某种方式更新我的项目才能获得最新的Android API?我以前从未这样做过,我甚至都不知道那可能.
如果有人能引导我走向正确的方向来解决这个问题,那就太好了.
进口线:
import android.support.v4.widget.SwipeRefreshLayout;
Run Code Online (Sandbox Code Playgroud)
表现:
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
Run Code Online (Sandbox Code Playgroud)
将库更新到最新版本后,仍无法识别导入.
我一直试图从listview-onclicklistener获取一个id到三个标签片段.用户首先单击myTicketsFragment,然后转到包含3个可滑动标签的详细信息页面.这些视图由名为TicketActivity的一个单独活动"托管".所以目前我已经成功地将数据从片段传递到TicketActivity,但我不能做得更远.一直在寻找2个小时但仍然没有结果..
这是我的代码:
myTicketsFragment:将setOnItemClickListener中的数据传递给制表符活动
public void onItemClick(AdapterView<?> parentView,
View childView, int position, long id) {
Bundle bundle = new Bundle();
bundle.putInt("ticketId", myTickets.get(position).getId());
Intent ticketDetail = new Intent(getActivity(), TicketActivity.class);
ticketDetail.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
ticketDetail.putExtras(bundle);
startActivity(ticketDetail);
}
Run Code Online (Sandbox Code Playgroud)
TicketActivity:接收数据并将其传递给3个选项卡
private ViewPager viewPager;
private TicketTabsPagerAdapter mAdapter;
private ActionBar actionBar;
// Tab titles
private String[] tabs = { "Info", "Intern", "Extern" };
public TicketInfoFragment ticketInfoFragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tabs);
// Receive data
Bundle bundle = getIntent().getExtras();
int ticketId = bundle.getInt("ticketId");
// …Run Code Online (Sandbox Code Playgroud)