Colombo: Samaraweera was unbeaten on 76 as the hosts reached 225-6 in their first innings at stump on day three of the second and final Test against New Zealand in reply to New Zealand's 412 at the P. Sara Oval in Colombo on Tuesday.
The hosts were struggling at 128-6 following fast bowler Tim Southee's twin strike in the morning, but Samaraweera steadied the innings with his 156-ball knock, which included five fours.
Samaraweera put on 97 for the unfinished seventh-wicket stand with Suraj Randiv (34 not out).
Sri Lanka, leading the series 1-0 following their 10-wicket win in the first Test, batted cautiously after resuming at 43 for 3 as they added 64 in the opening session and 70 in the second.
Southee put Sri Lanka in trouble when he dismissed Angelo Mathews (47) and opener Tharanga Paranavitana (40) in successive overs. The Sri Lankan pair put on 90 after three wickets had fallen for just 12 on Monday.
Paranavitana edged Southee to wicket-keeper Kruger van Wyk while Mathews fell to a superb one-handed catch by Martin Guptill, who held the ball low to his right in the slips.
New Zealand earlier had a chance to break the fourth-wicket stand but skipper Ross Taylor dropped Paranavitana at first slip off fast bowler Trent Boult when the batsman was on 32.
Paranavitana then failed to make the most of the opportunity, adding just eight more runs before he was caught behind to become Southee's third victim of the innings.
Southee, who also removed opener Tillakaratne Dilshan and Kumar Sangakkara on Monday, had so far taken four wickets for 39 runs off 16 overs.
Mathews, 20 overnight, played some aggressive shots in the morning as he lofted off-spinner Jeetan Patel over wide long-on for the first six of the innings and then cut the bowler past point for a four.
New Zealand 412 (Taylor 142, Williamson 135, Flynn 53, Herath 6-103)
Sri Lanka 225 for 6 (Samaraweera 76*, Southee 4-51)
Status Sri Lanka trail by 187 runs