0

私はappceleratorで作業していて、プロファイルであるタブがあります。上半分にはプロフィール写真、名前、その他のアイテムがあり、下半分にはTwitterのタイムラインがあります。Twitterのタイムラインコードを付け始めたとき、画面全体を占めています。他のアイテムを表示できるように画面の一部のみを占めるようにタイムラインを短縮する方法はありますか?

これは私のTwitterタイムラインコードです:

var twitterUserName = "foundationsix";
var httpClient = Ti.Network.createHTTPClient();
httpClient.timeout = 10000;
httpClient.open("GET","http://api.twitter.com/1/statuses/" + 
"user_timeline.json?count=10&screen_name=" + twitterUserName);

var twitterData = [];
httpClient.onload = function() {
try {


    var tweets = JSON.parse(this.responseText);
    for (var i=0; i < tweets.length; i++) {

        var tweetText = tweets[i].text;
        var user = tweets[i].user.screen_name;
        var avatar = tweets[i].user.profile_image_url;
        var created_at = tweets[i].created_at;

        var row = Ti.UI.createTableViewRow({hasChild:true,
            height:'auto'});

            var postView = Ti.UI.createView({
            height:'55',
            top:5,
            bottom:5,
            left:5,
            right:5,

        });

        var avatarImageView = Ti.UI.createImageView({
            image:avatar,
            left:0,
            top:0,
            height:48,
            width:48
        });

        postView.add(avatarImageView);

        var userLabel = Ti.UI.createLabel({
            text:user,
            left:54,
            width:120,
            top:-48,
            bottom:2,
            height:16,
            textAlign:'left',
            color:'#444444',
            font:{fontFamily:'Trebuchet MS',fontSize:14,
                fontWeight:'bold'}
        });

        postView.add(userLabel);

        var dateLabel = Ti.UI.createLabel({
            text:created_at,
            right:0,
            top:-18,
            bottom:2,
            height:14,
            textAlign:'right',
            width:110,
            color:'#444444',
            font:{fontFamily:'Trebuchet MS',fontSize:12}
        });

        postView.add(dateLabel);

        var tweetTextLabel = Ti.UI.createLabel({
            text:tweetText,
            left:54,
            top:0,
            bottom:2,
            height:'auto',
            width:236,
            textAlign:'left',
            font:{fontSize:14}
        });

        postView.add(tweetTextLabel);
        row.add(postView);
        twitterData[i] = row;
    }


    var tableview = Titanium.UI.createTableView({data:twitterData,
        minRowHeight:58});
    win1.add(tableview);

} 
catch(E) {
    alert(E);
}
 };
          httpClient.send();
4

1 に答える 1

0

心に留めておいてください..上と左、または下と右のいずれかを使用する必要があります..同じ要素で上と下を混同しないでください....

あなたの解決策に来ています..それが下がるようにテーブルにトップを与えてください........

ユーザー名などを指定できるトップビューを作成しました

以下にタイムラインを投稿できます

var win1=Ti.UI.createWindow()


///// this is top portion 
var topView=Ti.UI.createView({
    top:0,
    left:0,
    height:100,
    background:"#2d2d2d"
})

var username=Ti.UI.createLabel({
    text:"foundationsix",
    color:"#fff"
})

topView.add(username)
 win1.add(topView)





var twitterUserName = "foundationsix";
var httpClient = Ti.Network.createHTTPClient();
httpClient.timeout = 10000;
httpClient.open("GET","http://api.twitter.com/1/statuses/" + "user_timeline.json?count=10&screen_name=" + twitterUserName);

var twitterData = [];
httpClient.onload = function() {
try {


    var tweets = JSON.parse(this.responseText);
    for (var i=0; i < tweets.length; i++) {

        var tweetText = tweets[i].text;
        var user = tweets[i].user.screen_name;
        var avatar = tweets[i].user.profile_image_url;
        var created_at = tweets[i].created_at;

        var row = Ti.UI.createTableViewRow({hasChild:true,
            height:'auto'});

            var postView = Ti.UI.createView({height:55});

        var avatarImageView = Ti.UI.createImageView({
            image:avatar,
            left:0,
            top:0,
            height:48,
            width:48
        });

        postView.add(avatarImageView);

        var userLabel = Ti.UI.createLabel({
            text:user,
            left:54,
            width:120,
            top:-48,
            bottom:2,
            height:16,
            textAlign:'left',
            color:'#444444',
            font:{fontFamily:'Trebuchet MS',fontSize:14,
                fontWeight:'bold'}
        });

        postView.add(userLabel);

        var dateLabel = Ti.UI.createLabel({
            text:created_at,
            right:0,
            top:-18,
            bottom:2,
            height:14,
            textAlign:'right',
            width:110,
            color:'#444444',
            font:{fontFamily:'Trebuchet MS',fontSize:12}
        });

        postView.add(dateLabel);

        var tweetTextLabel = Ti.UI.createLabel({
            text:tweetText,
            left:54,
            top:0,
            bottom:2,
            height:'auto',
            width:236,
            textAlign:'left',
            font:{fontSize:14}
        });

        postView.add(tweetTextLabel);
        row.add(postView);
        twitterData[i] = row;
    }


    var tableview = Titanium.UI.createTableView({
        data:twitterData,
        minRowHeight:58,
        top:100
        });
    win1.add(tableview);

} 
catch(E) {
    alert(E);
}
 };
          httpClient.send();


win1.open()
于 2013-02-28T05:08:05.847 に答える