我正在使用jQuery,greensock和scollorama开发一个单页的网站.
它并不一定需要支持移动浏览器,但如果它可以在iPad上运行会很好 - 所以考虑到这一点,我开始在各种手机和平板电脑上进行测试.
我遇到的问题是,scrolllorama依赖于经常被触发的滚动事件,因为这是动画被连接到的 - 但是,当使用触摸屏时,浏览器似乎只在你开始拖动时触发滚动事件当你停止时 - 这在Opera Mini,Chrome,Safari,FF Mobile中是一致的.
为了使我的页面至少部分工作,我需要提出一些让我更频繁地触发滚动事件的东西 - 有谁知道怎么做?
PS我已经尝试使用iScroll作为scrolllorama文档建议,但是这不起作用而是打破了动画并使滚动变得不可能 - 我确信插件本身有效,但它似乎不适合我'已经有了.我正在寻找比插件更少参与的东西,只是一个理想情况下触发滚动事件的片段.
TL; DR
具有触摸屏的设备似乎仅在拖动期间触发一次或两次javascript滚动事件.我可以用JS或jQuery做一个简单的补丁,它会更频繁地触发滚动事件吗?
更新:我已尝试连接触摸事件并触发浏览器滚动,如下所示:
$(document).on('touchstart touchend touchmove', function(){
$(window).trigger('scroll');
});
Run Code Online (Sandbox Code Playgroud)
这似乎在Android上使用Firefox给我带来了更好的结果,虽然我不认为这种情况经常发生,因为我觉得它比什么都没有好.
我将在其他浏览器中测试,看看这是否有帮助.
更新2:
上面的代码在Android上帮助了很多FF,但在iPhone上却没有.我尝试为iPhone触发的手势事件添加处理程序,但没有变化.
$(window).on('touchstart touchend touchmove mousewheel touchcancel gesturestart gestureend gesturechange orientationchange', function(){
//alert($(window).scrollTop());
$(window).trigger('scroll');
});
Run Code Online (Sandbox Code Playgroud) 我想风格SearchView在toolbar看/作用相似SearchView的Google Play Store app.它似乎将搜索视图包装在一个cardview中,但它似乎也整合了按钮/抽屉切换行为.
这是searchView的主要活动,它集成了抽屉式切换器
当您单击它时,抽屉切换更改为箭头(单击时将从搜索视图中删除焦点)
当您单击商店中的应用程序时,您将转到应用程序详细信息页面,并且您将搜索视图的图标化版本看作具有向上按钮的折叠操作项:
最后,如果您点击搜索图标,它会扩展为一个动作项目(带有一种涟漪动画),并在屏幕上一直显示并包含向上按钮:
当我自己尝试这样做时,我遇到了很多问题.我试图将searchview包装在cardview中并将其放在工具栏中.它的工作原理但左边总是有填充,我无法删除(我试过contentInsetStart,不起作用):
<android.support.v7.widget.Toolbar
android:id="@+id/activityCatalogToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"
android:theme="@style/AppTheme.AppBarOverlay"
app:contentInsetStart="0dp"
app:contentInsetLeft="0dp">
<android.support.v7.widget.CardView
android:id="@+id/activityCatalogSearchContainer"
android:layout_height="match_parent"
android:layout_width="wrap_content"
android:layout_gravity="end"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:layout_marginRight="8dp"
android:layout_marginLeft="8dp"
app:cardCornerRadius="4dp"
app:cardElevation="8dp">
<android.support.v7.widget.SearchView
android:id="@+id/activityCatalogSearch"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:queryHint=""
android:iconifiedByDefault="false"/>
</android.support.v7.widget.CardView>
</android.support.v7.widget.Toolbar>
Run Code Online (Sandbox Code Playgroud)
我还试图删除工具栏,只用FrameLayout替换它.这允许我控制填充但显然我丢失了工具栏功能(向上按钮等)并且还引入了主题问题(图标和文本消失).
有谁知道他们是怎么做的?我不想仅仅为框架中已存在的样式小部件添加另一个库.谢谢!
我正在开发一个Android应用程序,Cordova-2.2.0, Android sdk我使用的是4.1和我的应用程序工作正常.
当我尝试测试此应用程序时Android 2.2,2.3.3我得到一些日志指示如下,并且我的应用程序页面没有打开.
日志是:
01-02 15:42:08.166: D/CordovaLog(486): Falling back on PROMPT mode since _cordovaNative is missing.
01-02 15:42:08.166: D/CordovaLog(486): file:///android_asset/www/js/ext/cordova-2.2.0.js: Line 1032 : Falling back on PROMPT mode since _cordovaNative is missing.
01-02 15:42:08.166: I/Web Console(486): Falling back on PROMPT mode since _cordovaNative is missing. at file:///android_asset/www/js/ext/cordova-2.2.0.js:1032
Run Code Online (Sandbox Code Playgroud)
我不知道为什么会出现以及如何解决它.
我已经实现了一个Android后台服务(基于Pocket Sphinx),可以在手机屏幕打开时持续监听,检测和发现某些关键字,然后做出相应的反应(对于domotic项目).但是,我的应用程序应始终具有较低的优先级,并且我希望它在任何其他应用程序需要使用时释放麦克风的资源.当应用程序 - 想要使用麦克风时,我可以接收任何系统意图或系统广播(以便我的服务可以释放它)吗?或者,有更好的方法或更好的做法吗?
当另一个应用想要访问麦克风时,这是我想避免的错误的日志:
AudioFocus requestAudioFocus() from android.media.AudioManager@419c3908com.google.android.voicesearch.a.h@419c67b8
I/MicrophoneInputStream(32360): mic_starting com.google.android.speech.audio.w@41989a30
D/AudioHardwareALSA(277): openInputStream: devices 0x400000 format 0x1 channels 16 sampleRate 16000
E/AudioHardwareALSA(277): error:Input stream already opened for recording
E/AudioRecord(32360): Could not get audio input for record source 6
E/AudioRecord-JNI(32360): Error creating AudioRecord instance: initialization check failed.
E/AudioRecord-Java(32360): [ android.media.AudioRecord ] Error code -20 when initializing native AudioRecord object.
E/MicrophoneInputStream(32360): Failed to initialize AudioRecord
Run Code Online (Sandbox Code Playgroud) 渲染问题无法解析资源@id/search_edit_frame
这是我在xml文件中得到的渲染错误.我认为它与我的support.v7.SearchView下面有关系是我的xml:
<RelativeLayout
android:id="@+id/layout_ricerca"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/search_border_backgroud"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:layout_marginTop="20dp">
<android.support.v7.widget.SearchView
android:id="@+id/testo_ricerca"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:queryHint="@string/search_hint"
android:textSize="25sp"
android:layout_marginStart="5dp"
android:iconifiedByDefault="false"/>
<ImageButton
android:id="@+id/tasto_ricerca"
android:background="@color/trans"
android:layout_marginTop="2dp"
android:layout_width="45dp"
android:layout_height="match_parent"
android:layout_marginEnd="3dp"
android:scaleType="centerInside"
android:layout_alignParentEnd="true"
android:src="@drawable/tasto_ricerca"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
当我改变了<android.support.v7.widget.SearchView对<SearchView错误消失,但是这不是一个很好的解决方案适合我,因为我不得不改变我所有的Java代码与合作SearchView,而不是android.support.v7.widget.SearchView.
有谁知道如何解决这个问题?为什么会这样?我不认为我的xml有什么问题.
编辑:
添加了错误的屏幕截图
我知道有一些类似的问题,但即使我看着这些问题,我也无法使它成功.错误消息是:
java.lang.RuntimeException:您的内容必须具有一个ListView,其id属性为'android.R.id.list'
.我试图将id更改为list.在另一个.这就是代码的样子:
public class committeeFragment extends SherlockListFragment {
private CommitteeAdapter adapter;
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
adapter = new CommitteeAdapter(getActivity().getApplicationContext());
setListAdapter(adapter);
}
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
return inflater.inflate(R.layout.fragment_committee, container, false);
}
public void
refreshList() {
adapter.updateDataSet();
adapter.notifyDataSetChanged();
}
}
Run Code Online (Sandbox Code Playgroud)
它使用以下适配器:
public class CommitteeAdapter extends BaseAdapter {
private
ArrayList<StudentCommittee> committeeList;
private Context context;
public CommitteeAdapter(Context context) {
this.context = context;
CommitteeDatabaseAdapter dbAdapter = new CommitteeDatabaseAdapter(context);
committeeList = dbAdapter.readAllCommittees();
}
public void updateDataSet() { …Run Code Online (Sandbox Code Playgroud) 我刚刚下载了android studio以及git.exe.我在版本控制中更新了路径 - >> git也有适当的git.exe路径并经过测试并且成功.现在从终端输入git clone http:// my projectlink时,它说"'git'不被识别为内部或外部命令,可操作程序或批处理文件."
我错过了什么吗?
我是 xamarin Andriod 的新手。安装 xamarin Studio 后,我在 VS 2012 中完成了一个简单的应用程序(单击按钮时的 Hello world)并在模拟器中对其进行了测试(针对类似于三星 Galaxy S3 创建的 AVD)。任何人都可以请告诉我将此应用程序 (.apk) 文件移动到 S3 手机并在 S3 手机上运行的步骤。
我不能sync我build.gradle下面的错误显示
Gradle同步失败:无法确定com.android.support:recyclerview-v7:24.0.0的工件:脱机模式没有可用的缓存版本
我正在使用AutoCompleteTextView我的布局.但它colorControlNormal并Activate没有像我预期的那样工作.
我的颜色值是#0072BA.
下面是不同设备的图.
1.)Android Kitkat
2.)Android LolliPop
3.)Android Marshmallow
我使用的Xml代码如下
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/md_black_1000"
android:layout_marginTop="5dp"
android:textSize="15sp"
android:text="Medical Store Name"
android:textColorHint="#999999"
android:layout_below="@+id/search_drug_store"
android:id="@+id/autoCompleteTextView_storename"
android:layout_marginLeft="15dp"
android:layout_marginRight="10dp"/>
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:textSize="12sp"
android:textColor="#999999"
android:layout_below="@+id/autoCompleteTextView_storename"
android:layout_marginLeft="25dp"
android:inputType="textNoSuggestions"
android:layout_marginRight="10dp"/>
Run Code Online (Sandbox Code Playgroud)
我没有给AutoCompleteTextView任何样式然后它为什么会发生?
如果我给这个风格
参考材料设计链接:
http://www.materialdoc.com/autocomplete-view/
并给这种风格
<style name="Autocomplete" parent="Widget.AppCompat.Light.AutoCompleteTextView">
<item name="android:background">@color/green500</item>
<item name="colorControlNormal">@color/amber500</item>
<item name="colorControlActivated">@color/cyan500</item>
</style>
Run Code Online (Sandbox Code Playgroud)
但在棒棒糖中没有任何变化.
这是棒棒糖版本中的错误还是我做错了什么?
android autocompletetextview android-layout android-design-library android-5.1.1-lollipop
android ×9
searchview ×2
.net ×1
build.gradle ×1
cordova ×1
git ×1
google-play ×1
ios ×1
javascript ×1
listview ×1
microphone ×1
rendering ×1
scroll ×1
service ×1
themes ×1
xamarin ×1
xml ×1