在一个TableView应用程序中,我将数据从a加载Fragment到Fragment内部a Fragment.但是,当我TableView将Fragment它显示以前的数据.我可以Fragment使用当前数据而不是以前的数据重新填充吗?
我正在使用android.support.design.widget.BottomNavigationView支持库中的新功能.如何从代码中设置当前选择?我意识到,旋转屏幕后,选择会更改回第一项.当然,它也将有所帮助,如果有人能告诉我,如何"拯救"的当前状态BottomNavigationView的onPause功能,以及如何将其在恢复onResume.
谢谢!
我有一个Android应用程序,它支持通过其他应用程序发送文本.因此,它使用ACTION_SEND意图和EXTRA_TEXT字段.选择器向我提供了可以处理这种意图的所有应用程序.这些是推特,电子邮件,...和Facebook.但是当我选择Facebook时,它会打开浏览器并转到以下页面:
http://m.facebook.com/sharer.php?u=mytext
它显示我的文本和提交按钮.但是,当我按下提交按钮时,没有任何事情发生.该页面再次加载.我想也许只能通过Facebook应用程序发送URL.可能是吗?
有没有人设法通过Facebook Android应用程序通过ACTION_SEND发送文本?
我有一个应用程序,它有一个使用的活动ScrollView.我需要检测用户何时到达底部ScrollView.我做了一些googleing,我发现这个页面在哪里解释.但是,在这个例子中,那些人扩展了ScrollView.正如我所说,我需要扩展Activity.
所以,我说"好吧,让我们尝试使自定义类扩展ScrollView,覆盖onScrollChanged()方法,检测滚动结束,并相应地采取行动".
我做了,但在这一行:
scroll = (ScrollViewExt) findViewById(R.id.scrollView1);
Run Code Online (Sandbox Code Playgroud)
它扔了一个 java.lang.ClassCastException.我<ScrollView>在XML中更改了标签,但显然它不起作用.我的问题是:为什么,如果ScrollViewExt延伸ScrollView,扔到我脸上ClassCastException?有没有办法检测滚动结束而不会搞得太多?
谢谢大家
编辑:正如所承诺的,这是我的XML重要部分:
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<WebView
android:id="@+id/textterms"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:textColor="@android:color/black" />
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
我改变了它从TextView到WebView到能证明里面的文字.我想要实现的是"在完全阅读合同条款之前,接受按钮不会激活"的事情.我的扩展类称为ScrollViewExt.如果我更改标签ScrollView,ScrollViewExt它会抛出一个
android.view.InflateException: Binary XML file line #44: Error inflating class ScrollViewExt
Run Code Online (Sandbox Code Playgroud)
因为它不懂标签ScrollViewEx.我不认为它有解决方案......
谢谢你的回答!
我有一个RecyclerView在里面CardView.该CardView有500dp的高度,但我想缩短这个高度,如果RecyclerView是较小的.所以我想知道RecyclerView在第一次完成放置项目时是否有任何监听器被调用,从而可以将RecyclerView高度设置为CardView高度(如果小于500dp).
我想请求一些帮助:在我的应用程序中,我只有一个活动,一个PreferenceActivity(不需要其他活动,它只是一个简单的后台同步应用程序,所以它PrefsActivity是Main/Launcher).在用户设置首选项之后,检查a checkBoxPreference,然后启动(或停止)服务.在开始时,会出现一个对话框.但问题是:如果用户按下(离开活动),再次启动它,然后尝试检查checkBoxPref.,prefsactivity崩溃.对话框没有显示.我不知道为什么,以及如何解决它.
这段代码与那部分完全相同,是什么给了我这个问题:
PrefsActivity.java:
package is.it.works;
// imports .....
public class PrefsActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener {
SharedPreferences prefs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
prefs = PreferenceManager.getDefaultSharedPreferences(this);
prefs.registerOnSharedPreferenceChangeListener(this);
}// onCreate
@Override
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
if (key.equals("checkTest")) {
showDialog(1);
}
if (key.equals("cancel")) {
dismissDialog(1);
}
}// onSPC
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case 1: {
ProgressDialog dialog = new ProgressDialog(this);
dialog.setMessage("press …Run Code Online (Sandbox Code Playgroud) 我有垂直RecyclerView使用GridLayoutManager.我希望每列都居中,但列始于左侧.在下图中,您可以看到我在说什么.我用丑陋的配色方案来说明列和背景.绿色是每个项目的背景RecyclerView,红色是RecyclerView自身的背景:
我正在设置:
mRecyclerView.setLayoutManager(new GridLayoutManager(this, 2));
Run Code Online (Sandbox Code Playgroud)
这是column_item.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="120dp"
android:layout_height="180dp"
android:orientation="vertical"
android:padding="4dp">
<ImageView
android:id="@+id/movie_column_photo"
android:layout_width="80dp"
android:layout_height="120dp"/>
<TextView
android:id="@+id/movie_column_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这是recyclerview xml:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/company_details_recyclerview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical">
</android.support.v7.widget.RecyclerView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 我已经实现了FragmentPagerAdapter和使用a List<Fragment>来保存所有片段以供我ViewPager显示.在addItem()我只是添加一个实例化Fragment然后调用notifyDataSetChanged().我不确定这是否有必要.
我的问题只是......从片段1开始
[Fragment 1]
Run Code Online (Sandbox Code Playgroud)
添加新的片段2
[Fragment 1] [Fragment 2]
Run Code Online (Sandbox Code Playgroud)
删除片段2
[Fragment 1]
Run Code Online (Sandbox Code Playgroud)
添加新的片段3
[Fragment 1] [Fragment 2]
Run Code Online (Sandbox Code Playgroud)
添加新片段时,一切看起来都很棒.删除片段然后添加新实例化的片段后,仍会显示旧片段.当我去.getClass.getName()它时,它给了我片段3的名字,但我仍然看到片段2.
我相信这可能是一个问题,instantiateItem()但我认为适配器是为我们处理.任何建议都会很棒.
适配器代码......
public class MyPagerAdapter extends FragmentPagerAdapter {
public final ArrayList<Fragment> screens2 = new ArrayList<Fragment>();
private Context context;
public MyPagerAdapter(FragmentManager fm, Context context) {
super(fm);
this.context = context;
}
public void removeType(String name){
for(Fragment f: screens2){
if(f.getClass().getName().contains(name)){ screens2.remove(f); return; }
}
this.notifyDataSetChanged();
}
public boolean addSt(String …Run Code Online (Sandbox Code Playgroud) 如果没有我找到的出色解决方案,这似乎是一个常见问题.目标是停止ScrollView从自动滚动到EditText具有焦点的(或任何视图).
你有一堆视图(Buttons,TextViews等)ScrollView,其中一个是EditText.点击后说出一个按钮ScrollView,ScrollView向下滚动到EditText(关闭屏幕).这是不可取的,因为您不希望其他元素滚动离开屏幕.
现在,我可以通过在屏幕中首先显示其他可聚焦元素来阻止这种情况发生ScrollView.但是,一般问题仍然存在.用户手动向下滚动EditText,输入一些数字,然后向上滚动到顶部(EditText现在关闭屏幕),他们点击一个按钮ScrollView,猜猜是什么?在ScrollView下降到织补滚动EditText.
我正在考虑扩展ScrollView和覆盖那里的一些方法findFocusableViewInBounds,但我有一种感觉,我只会让自己陷入更多麻烦.
如果可以的话请帮忙.
我已经玩了很多东西,例如EditText在我的顶部有一个0高度ScrollView,将Next Focusable元素属性添加到其他项目中ScrollView等等.我想一个"hack"可能会让EditText虚拟或者失去焦点.手动键盘隐藏或东西.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/messageLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/messageSender"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"/>
<TextView
android:id="@+id/messageSenderName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/messageSender"
android:ellipsize="end"
android:maxLines="1"
android:singleLine="false"
android:textColor="@color/list_text_color"
android:textSize="16dp"
android:layout_marginTop="5dp" />
<TextView
android:id="@+id/messageContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/messageSender"
android:layout_below="@id/messageSenderName"
android:ellipsize="end"
android:maxLines="1"
android:singleLine="false"
android:textColor="@color/codeFont"
android:textSize="13dp"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
在我的布局中,我有问题.当我设置marginTop="5dp"它很好,但是当我使用marginBottom时,我的布局没有任何反应.当我在RelativeLayout其中设置填充时也不起作用.这里有什么问题?你能给我任何解决方案吗?