Android 安卓钛合金拉屏刷新

Android 安卓钛合金拉屏刷新,android,titanium,appcelerator,Android,Titanium,Appcelerator,如何拉提神 在Tianium appcelerator中,我需要在tableview中显示内容列表。如果我拉视图,它需要更新。在iPhone中我完成了,但在Android中它无法工作。请任何人帮助解决这个问题在Android 我的Android代码:- tableView.addEventListener('scroll',function(e) { var offset = e.contentOffset.y; if (offset < -65.0 && !p

如何拉提神

在Tianium appcelerator中,我需要在tableview中显示内容列表。如果我拉视图,它需要更新。在iPhone中我完成了,但在Android中它无法工作。请任何人帮助解决这个问题在Android

我的Android代码:-

tableView.addEventListener('scroll',function(e)
{
   var offset = e.contentOffset.y;
   if (offset < -65.0 && !pulling && !reloading)
   {
       var t = Ti.UI.create2DMatrix();
       t = t.rotate(-180);
       pulling = true;
       arrow.animate({transform:t,duration:180});
       statusLabel.text = "Release to refresh...";
   }
   else if((offset > -65.0 && offset < 0 ) && pulling && !reloading)
   {
       pulling = false;
       var t = Ti.UI.create2DMatrix();
       arrow.animate({transform:t,duration:180});
       statusLabel.text = "Pull down to refresh...";
   }    
});

tableView.addEventListener('dragEnd', function(e)
{

   if(pulling && !reloading)
   {
       reloading = true;
       pulling = false;
       arrow.hide();
       actInd.show();
       statusLabel.text = "Reloading...";
       tableView.setContentInsets({top:60},{animated:true});
       tableView.scrollToTop(-60,true);
       arrow.transform=Ti.UI.create2DMatrix();
       beginReloading();
   }
});
tableView.addEventListener('scroll',函数(e)
{
var offset=e.contentOffset.y;
如果(偏移量<-65.0&&!拉动和重新加载)
{
var t=Ti.UI.create2DMatrix();
t=t.旋转(-180);
拉动=真;
设置动画({transform:t,duration:180});
statusLabel.text=“发布以刷新…”;
}
否则,如果((偏移量>-65.0&&offset<0)&&pull&&reloading)
{
拉=假;
var t=Ti.UI.create2DMatrix();
设置动画({transform:t,duration:180});
statusLabel.text=“下拉以刷新…”;
}    
});
tableView.addEventListener('dragEnd',函数(e)
{
if(拉动和重新加载)
{
重新加载=真;
拉=假;
arrow.hide();
actInd.show();
statusLabel.text=“重新加载…”;
setContentInsets({top:60},{animated:true});
tableView.scrollToTop(-60,true);
arrow.transform=Ti.UI.create2DMatrix();
beginReloading();
}
});

这只是厨房水槽示例中的IOS代码吗

有几次尝试让它在Android上运行,尽管我还没有证实它们中的任何一个能像预期的那样工作。据我所知,问题是你不能像在IOS中那样在Android中获得偏移量

一个快速的谷歌搜索找到了这个链接,它是从官方Appcelerator论坛引用的。

Tianium现在支持Android(>v6.2.0)和iOS(>3.2.0)通过Tianium.UI.TableView、Tianium.UI.ListView或Tianium.UI.ScrollView对象进行拉式刷新

见文件:

var win = Ti.UI.createWindow({
    fullscreen:true
});
var counter = 0;

function genData() {
    var data = [];
    for (var i=1; i<=3; i++) {
        data.push({properties:{title:'ROW '+(counter+i)}})
    }
    counter += 3;
    return data;
}

var section = Ti.UI.createListSection();
section.setItems(genData());

var control = Ti.UI.createRefreshControl({
    tintColor:'red'
})

var listView = Ti.UI.createListView({
    sections:[section],
    refreshControl:control
});

control.addEventListener('refreshstart',function(e){
    Ti.API.info('refreshstart');
    setTimeout(function(){
        Ti.API.debug('Timeout');
        section.appendItems(genData());
        control.endRefreshing();
    }, 2000);
})

win.add(listView);
win.open();
从文档中获取的示例代码:

var win = Ti.UI.createWindow({
    fullscreen:true
});
var counter = 0;

function genData() {
    var data = [];
    for (var i=1; i<=3; i++) {
        data.push({properties:{title:'ROW '+(counter+i)}})
    }
    counter += 3;
    return data;
}

var section = Ti.UI.createListSection();
section.setItems(genData());

var control = Ti.UI.createRefreshControl({
    tintColor:'red'
})

var listView = Ti.UI.createListView({
    sections:[section],
    refreshControl:control
});

control.addEventListener('refreshstart',function(e){
    Ti.API.info('refreshstart');
    setTimeout(function(){
        Ti.API.debug('Timeout');
        section.appendItems(genData());
        control.endRefreshing();
    }, 2000);
})

win.add(listView);
win.open();
var win=Ti.UI.createWindow({
全屏:正确
});
var计数器=0;
函数genData(){
var数据=[];

对于(var i=1;iI刚刚尝试了这个要点,并意识到它没有效率。它可能会对小数据列表起作用,但iOS和Android中列表组件的一个强大功能是,当滚动发生时,它们会回收行,这样每次渲染的行数不会超过view+1中的行数。那么如果有50行或1000行,速度是相同的。本要点中的技术要求表是其所有行的高度,因此不会发生回收,而且速度很慢(特别是对于远程图像URL)我希望有时间去尝试,并且我认为可以很好地工作的是从这个Java项目中创建一个钛的打包模块:答案仅仅是将原始海报指向一个方向。不是为原始海报做工作,也不是提供最有效的解决方案。你是ori吗ginal海报?你用了多少账户?嘿,你已经弄明白了吗??